The main talking point of the first half was Mbappe's disallowed goal, which included a VAR review for a potential penalty in the build-up.
However, the officials decided against awarding the spot-kick, ensuring the contest remained finely poised at the half time interval.
After playing out a goalless half, Los Leones made a bright start to the second period, with Alex Berenguer pouncing on Thibaut Courtois's parry to bundle the ball home from close range.
Real Madrid looked to have spurned the chance to level the scoreline when Mbappe saw his penalty saved just a week after he failed to convert a spot-kick against Liverpool in the Champions League.
However, Jude Bellingham came to his teammate's aid, reacting quickly to fire home a rebound to score in a fourth consecutive league game.
Unfortunately for Los Blancos, they were level for just two minutes before Federico Valverde gifted the hosts the chance to restore their narrow lead.
Gorka Guruzeta kept his composure to drill the ball past Courtois to clinch all three points in a famous victory for Real Madrid.
Athletic remain in fourth place in the league table, while Real Madrid are four points adrift of leaders Barcelona after suffering their second La Liga defeat of the season.
ATHLETIC BILBAO VS. REAL MADRID HIGHLIGHTS
Berenguer goal vs. Real Madrid (53th min, Athletic Bilbao 1-0 Real Madrid)
Berenguer finds the breakthrough to get San Mames bouncing. Courtois parries Inaki Williams's inswinging cross into the path of Berenguer, who manages to bundle the ball over the line to net his third goal of the season.
Mbappe penalty miss vs. Athletic Bilbao (69th min, Athletic Bilbao 1-0 Real Madrid)
Mbappe gets the chance to go to the penalty spot after Agirrezabala catches Rudiger in an attempt to punch the ball. However, the Frenchman produces a tame spot-kick, allowing the Athletic goalkeeper to get down low to his left to protect the home side's narrow lead.
Bellingham goal vs. Athletic Bilbao (78th min, Athletic Bilbao 1-1 Real Madrid)
Bellingham makes up for Mbappe's penalty miss. Bellingham showcases his goalscoring instants to guide home a rebound from close range after pouncing on Agirrezabala's parry from Mbappe's powerful strike.
Guruzeta goal vs. Real Madrid (81st min, Athletic Bilbao 2-1 Real Madrid)
Athletic hit the front again. Athletic require less than two minutes to restore the lead thanks to Guruzeta. The striker steals possession off Valverde before slotting past Courtois to register his fourth La Liga goal of the season.
MAN OF THE MATCH - DANI VIVIAN
Dani Vivian produced a stellar display in the heart of the Athletic defence to help his side get the better of the Spanish champions.
The Spain international made two blocks, eight clearances and seven recoveries, while he won six of his nine duels.
Vivian also looked after the ball when he had possession, showcasing his importance to Ernesto Valverde's side.
ATHLETIC BILBAO VS. REAL MADRID MATCH STATS
Possession: Athletic Bilbao 36%-64% Real Madrid
Shots: Athletic Bilbao 9-10 Real Madrid
Shots on target: Athletic Bilbao 3-5 Real Madrid
Corners: Athletic Bilbao 5-2 Real Madrid
Fouls: Athletic Bilbao 21-9 Real Madrid
BEST STATS
WHAT NEXT?
After dropping points at San Mames, Carlo Ancelotti's side will be desperate to bounce back in Saturday's away game against Girona.
As for the hosts, they will carry significant momentum into Sunday's La Liga meeting with Villarreal at San Mames.
Written by
Ben Sully