Karim Benzema and Ricardo Carvalho scored first-half goals to put the pressure on Barca, who host Athletic Bilbao on Sunday after suffering a league draw and a Champions League defeat over the past week.
The champions have 62 points and Real are on 60, while third-placed Valencia slipped further behind on 48 after they were held to a 0-0 draw at home by Sporting Gijon earlier in the day.
Angel Di Maria dribbled between three defenders to set up Benzema for the opener in the sixth minute and Carvalho steered in Cristiano Ronaldo’s low free-kick just before the break.
The result meant Real coach Jose Mourinho has now gone nine years since he last suffered a defeat in a home league match, when his Porto side lost to visiting Beira Mar on February 23, 2002. That unbeaten run from Mourinho’s time with Porto, Chelsea, Inter Milan and Real extended to 148 matches, and includes a 100 per cent 12 wins from 12 since he moved to the Bernabeu.
Meanwhile, Valencia were unable to find a way past a resolute Sporting Gijon and were held 0-0 at home to stay third in La Liga.
Sporting had ended leaders Barcelona’s 16-match winning streak with a 1-1 draw last weekend, and put in another disciplined display to leave their hosts on 48 points from 24 matches.
Unai Emery’s side are nine points behind second-placed Real Madrid, who were playing at home to Levante later on Saturday.
Valencia, perhaps feeling the effects of a midweek Champions League 1-1 draw at home to Schalke 04, failed to put much pressure on Sporting’s goal until the final minutes.
A fierce drive from substitute Jonas was straight at the keeper at the end, sealing a frustrating night for the home side, who had earlier had striker Aritz Aduriz carried off with an ankle injury.
In Saturday’s late kick-off, Atletico Madrid ended a run of five straight defeats by edging a frenetic encounter with Real Zaragoza 1-0 at the Estadio de la Romareda.
Sergio Aguero scored the only goal of the match with a well-taken strike in the 66th-minute, after an energetic performance from the Argentine striker.
Zaragoza were desperately unlucky to leave the game empty handed, after twice hitting the crossbar in the dying minutes.