(CNN) -- Ten-man Barcelona saw their lead at the top of the Primera Liga cut to seven points as they were shocked by city rivals Espanyol while Real Madrid ran riot against Real Betis on Saturday evening.
Ivan De La Pena celebrates one of his two goals that shocked Barcelona on Saturday.
Barca's lead stood at 12 points before last weekend's 2-2 draw against Betis, but that has been nearly halved after Espanyol ran out surprise 2-1 winners at the Nou Camp.
Former Barca player Ivan De La Pena did the damage with two quick-fire goals in the 50th and 54th minutes after Seydou Keita was sent off seven minutes before the break for a late tackle on Moises Hurtado.
De La Pena took advantage with a close-range header and added his second just four minutes later with a superb chip after goalkeeper Victor Valdes cleared the ball straight to his feet.
Yaya Toure pulled one back two minutes after the hour mark, but there was no comeback from the leaders this time.
It was Barcelona's first defeat since the opening day of the season, ending their 22-match unbeaten run in the process.
Meanwhile, there were no such problems for Madrid, who crushed Betis 6-1 at the Bernabeu, with all seven goals coming in the first half.
Captain Raul and Klaas Jan Huntelaar both netted twice for the defending champions to add to further efforts from team-mates Gonzalo Higuain and Sergio Ramos.
Ricardo Oliveira had pulled a goal back for Betis, but it was nowhere near enough to deny rampant Madrid a ninth successive league win under new coach Juande Ramos.
Elsewhere, Villarreal went fourth thanks to a 2-1 win over Sporting Gijon, with a Joan Capdevila free-kick securing the points, while Sevilla cemented their third position with a late 1-0 win over Atletico Madrid.