Real Madrid fell to a 1-0 defeat away to Levante on Saturday, dropping off the top of the La Liga standings.
Their problems had earlier deepened as Eden Hazard limped off the pitch four days before their UEFA Champions League showdown with Manchester City.
Levante forward Jose Luis Morales won the game with an unstoppable strike in the 79th minute.
His shot flummoxed Real Madrid goalkeeper Thibaut Courtois as he blasted a first-time shot inside the near post from a tight angle.
Champions FC Barcelona replaced Zinedine Zidane’s side at the top of the table on 55 points after hammering Eibar 5-0 earlier on.
They have gained five points on their arch rivals in the space of seven days, ahead of next Sunday’s ‘Clasico’ at the Santiago Bernabeu.
“We wasted a lot of chances. We began well but got worse as the game went on and we have lost three points.”
Real Madrid were looking to respond after last week’s surprise 2-2 draw at home to struggling Celta Vigo.
But they struggled to cope with a Levante side who seem to relish playing the biggest sides at home and beat Barca 3-1 earlier this season at the Ciutat de Valencia stadium.
The visitors’ best chance fell to Hazard, who scuffed the ball when he had a clear sight of goal early in the second half.
A few minutes later he left the pitch looking in pain, in only his second game back from an ankle injury that ruled out him of action for almost three months.
The only goal of the match arrived when it was least expected.
He had not scored in the league since August but struck the ball perfectly, leaving a dumbstruck Courtois with no chance.
“I struck the ball with all my soul,” said Morales.