Treble-chasing Sevilla kept themselves in the title race with an exciting 3-1 home victory over Real Zaragoza in the Primera Liga on Sunday.
The UEFA Cup winners and King's Cup finalists led through Luis Fabiano's first-half goal but were pegged back when Andres D'Alessandro's inswinging corner skimmed off Daniel Alves's head into his own net.
Further goals from Alexander Kerzhakov and Frederic Kanoute sealed the win at the end, however, and kept third-placed Sevilla two points behind Real Madrid and Barcelona.
Leaders Real and Barca are still neck-and-neck at the top with 72 points after both won at home on Saturday.
Real, who beat Deportivo Coruna 3-1, are first with a superior head-to-head record. Ten-man Barca kept the pressure on their arch-rivals by earning a nervy 1-0 win over King's Cup finalists Getafe.
Fourth-placed Valencia (65) effectively dropped out of the title race after losing 3-2 at home to local rivals Villarreal on Saturday. Zaragoza are fifth with 58.
Bottom club Gimnastic Tarragona (25) had their relegation mathematically confirmed even before they lost at home to Atletico Madrid. Spain striker Fernando Torres scored both goals in their 2-0 defeat.
Atletico are sixth with 57, one ahead of Villarreal.
At the foot of the table, Celta Vigo scored an injury-time penalty to beat Real Betis 2-1 at home and keep alive their hopes of avoiding relegation.
Brazilian striker Fernando Baiano kept his nerve to score from the spot and put 19th-placed Celta level on 33 points with Real Sociedad, who lost 2-0 at Osasuna to remain 18th.
Celta and Sociedad are four points from the safety zone with two matches left.
Athletic Bilbao moved on to 37 points, the same as Betis, after beating visitors Real Mallorca 1-0, but remain 17th due to an inferior head-to-head record.