Sevilla suffered their first home defeat of the season after going down 2-1 to Real Mallorca.
The league leaders broke the deadlock on 22 minutes when Fredi Kanoute converted from the penalty spot.
However, Mallorca stunned the home fans when Jose Carlos Nunes volleyed them level four minutes after the break.
Mallorca grabbed the winner on 62 minutes when Maxi Lopez scored from close-range as Sevilla failed to capitalise on Barcelona's slip-up to Espanyol on Saturday.
Real Madrid climbed into third spot with a hard-fought 1-0 win over Real Zaragoza at El Santiago Bernabeu.
In front of the on-looking David Beckham in the stands Ruud van Nistelrooy grabbed the winner four minutes before half-time when converting Gonzalo Higuain's cross from close-range.
Atletico Madrid boosted their European hopes with a 3-1 win at Celta Vigo.
Fernando Torres fired Atletico in front on 13 minutes and he doubled the lead with his second of the game eight minutes later.
Sergio Aguero added a third on 54 minutes rendering Nene's 70th minute a mere consolation for Celta.
Osasuna were the biggest winners of the day with a thumping 5-1 success over struggling Real Betis.
Soldado set Osasuna on their way with the opener after just 17 minutes and Francisco Punal doubled the lead on 31 minutes.
Arzu reduced the arrears for Betis a minute after the break, but David Lopez restored the two-goal cushion on 58 minutes.
Soldado grabbed his second of the contest on the hour mark and Pierre Webo completed the rout with the fifth on 73 minutes.
Villarreal picked up a 1-0 win at Athletic Bilbao to leave the home side still in trouble at the wrong end of the table.
Diego Forlan scored the only goal of the game on 70 minutes, but Villarreal were indebted to a last-minute penalty save by Sebastian Viera from Francisco Yeste to secure the points with Fabricio Fuentes seeing red for Villarreal in the closing seconds.
Racing Santander piled the misery on struggling Real Sociedad with a 1-0 victory at Estadio El Sardinero.
Ezequiel Garay scored the crucial winning goal in the final minute when he kept his cool from the penalty spot.
Recreativo de Huelva and Deportivo La Coruna shared the spoils after a 1-1 draw at Estadio Nuevo Colombino.
Javi Guerrero fired Recreativo in front on 12 minutes, but Javier Arizmendi levelled matters just eight minutes later.
Gimnastic de Tarragona remain rooted to the bottom of the table after a 3-1 defeat to Getafe.
Angel Vivar Dorado opened the scoring for Getafe on 13 minutes and Daniel Guiza added a second two minutes before the break.
Miguel Angel Llera pulled a goal back for Gimnastic on the hour mark, but Francisco Javier Casquero made sure of the win with Getafe's third 16 minutes from time.
Click on fixture for full match summary
Athletic Bilbao 0-1 Villarreal
Celta Vigo 1-3 Atletico Madrid
Gimnastic 1-3 Getafe
Osasuna 5-1 Real Betis
Racing Santander 1-0 Real Sociedad
Real Madrid 1-0 Real Zaragoza
Recreativo 1-1 Deportivo La Coruna
Sevilla 1-2 Mallorca