Real Madrid produced a ruthless first-half display to thrash already-relegated Granada 4-0 on Saturday and remain on course for a first league title in five years, while Barcelona hammered Villarreal 4-1.
James Rodriguez put Zinedine Zidane's side in charge in the third minute by bundling in Lucas Vazquez's arrowed cross and then headed in a cross from forgotten man Fabio Coentrao to double their lead in the 11th, scoring for the fifth time in four days.
Alvaro Morata followed the Colombian's early strikes with two goals of his own in the 30th and 35th to kill off Tony Adams's sunken side and put Real level on 84 points with champions Barca.
Barca lead the standings due to their superior head-to-head record although Real have a game in hand and will win a first domestic title since 2012 if they take seven points from their remaining three games.
Barca's formidable front three of Lionel Messi, Luis Suarez and Neymar all scored as the champions inflicted the heaviest league defeat of the season on Villarreal, who have the second best defensive record in Spain's top flight.
Neymar was in sensational form in his second game back from suspension and nudged Barcelona ahead in the 21st minute after pouncing on a deflected pass from Messi.
[caption id="attachment_61957" align="aligncenter" width="640"]
Barcelona's Neymar and Villarreal's Andre Fernandez in action REUTERS
Cedric Bakambu fired Villarreal level in the 32nd after beating the offside trap to latch on to a clever through ball from Roberto Soldado.
Barca were temporarily punctured by the leveller but a marvellous piece of skill from Messi allowed them to restore their lead on the stroke of halftime with a shot from the Argentine which flew beyond Andres Fernandez with the help of a deflection.
Suarez powered the ball under the Villarreal goalkeeper in the 69th to score his third goal in two games and the 100th for the feted front three this campaign, while Messi grabbed the fourth with a deft chip from the penalty spot in the 82nd.
"We played very well with and without the ball and scoring four goals against this Villarreal side shows how well we did," Barca coach Luis Enrique told reporters. "Our pressure was key and we produced a complete performance against a great side."
Atletico Madrid beat Eibar 1-0 with a second-half strike from Saul Niguez to move five points clear of fourth-placed Sevilla and tighten their grip on the last automatic Champions League berth.
[caption id="attachment_61958" align="aligncenter" width="640"]
Atletico Madrid's Yannick Ferreira Carrasco and Eibar's Yoel Rodriguez in action. REUTERS
Saul met a cutback from Diego Godin first time to send the ball into the bottom corner in the 69th minute. Uruguayan defender Godin was sent off in injury time for picking up two bookings inside three minutes.
Atletico coach Diego Simeone made just two changes from the side that were thrashed 3-0 by Real Madrid in the Champions League on Tuesday, resting only Kevin Gameiro for next week's semi-final second leg, although Stefan Savic was suspended.
Sporting Gijon kept up their slim hopes of survival by beating Las Palmas 1-0, moving three points behind Leganes who occupy the final spot outside the relegation zone and host Real Betis on Monday.
Granada CF 0 Real Madrid 4
James Rodriguez 3,11, Alvaro Morata 30,35
Neymar 21, Lionel Messi 45,82(pen), Luis Suarez 69 Villarreal 1
Cedric Bakambu 32
Atletico Madrid 1
Saul Niguez 69 Eibar 0
Sporting Gijon 1
Carlos Carmona 67 Las Palmas 0
P W D L F A Pts
36 26 6 4 108 34 84
2 Real Madrid
35 26 6 3 96 39 84
3 Atletico Madrid
36 22 8 6 66 25 74
36 20 9 7 63 45 69
36 18 9 9 53 32 63
6 Athletic Club
35 19 5 11 51 38 62
7 Real Sociedad
36 19 5 12 55 49 62
36 15 9 12 54 46 54
35 13 11 11 45 47 50
35 12 12 11 36 41 48