Goals in the opening nine minutes from Javi Martinez and Iker Muniain gave the home side the perfect start but Racing, who hit the woodwork twice in the first half, eventually got on the scoresheet through Ivan Bolado.
Any hopes of leaving San Mames with a draw, however, were ended by the late dismissal of Pedro Munitis for a second yellow card.
Athletic, who had beaten Racing in their previous three meetings, flew out of the blocks and were in front after just six minutes, with Carlos Gurpegi whipping in a free-kick which was headed home by Martinez.
Racing had barely had time to register that blow when they found themselves further behind three minutes later. Gaizka Toquero was the orchestrator with a pass into the area for Muniain to slam a shot into the top right corner.
The visitors took almost half an hour to recover, but Munitis settled nerves with a left-footed shot which just cleared the crossbar.
That sparked a spell of pressure from Miguel Angel Portugal's side and they were unfortunate not to be back on level terms before the interval.
Kennedy Bakircioglu saw his speculative strike from distance smack the crossbar after 32 minutes.
And four minutes later it was David Lopez's turn to curse the woodwork with his free-kick coming back off the post.
Racing continued to push forward after the interval and home goalkeeper Gorka Iraizoz was put to the test by a drive from Markus Rosenberg which had to be tipped around the post.
But the pressure finally paid off after 72 minutes with Bakircioglu's free-kick turned into the net by the head of Bolado.
An equaliser would have been a just reward for Racing's efforts, but their hopes of taking a point were dashed in the dying minutes when Munitis was shown a red card for a raised elbow which left Martinez with a bloody nose.