Granada moved within touching distance of Primera Division survival with a hard-fought 2-1 win over Espanyol thanks to two goals from Odion Ighalo.
The Nigerian produced a great turn and finish to slot home Franco Jara's cross just before the half hour and Ighalo was on hand again six minutes later to head home a much easier finish from David Cortes' cross.
Espanyol have not recovered from a two-goal half-time deficit for nine years but they did give themselves hope when Didac Vila's drive from 30 yards flew in off a post.
Coutinho, Alvaro Vasquez and Rui Fonte all passed up clear opportunities to bring the visitors level as they slipped to their third consecutive defeat.
Villarreal eased their relegation fears and all almost certainly consigned Sporting Gijon to the Segunda Division with a 3-2 win at El Molinon in a match which saw both home coach Javier Clemente and substitute Villarreal goalkeeper Cesar Sanchez sent off.
The visitors started brightly and were handed a deserved lead on 19 minutes when Mario Gaspar slotted home Bruno's cutback after the midfielder's first effort had been saved by Juan Pablo.
Sporting were level 20 minutes later thanks to Alberto Lora's stunning long-range strike that crept inside Diego Lopez's left hand post, but the hosts were only level for four minutes as Arnolin Gregory brought down Marco Ruben inside the area and Marcos Senna smashed home the resulting penalty.
Hernan Perez made it 3-1 with a similar strike to Lora's 10 minutes into the second half and despite a late rally from Sporting after Alejandro Galvez had halved the deficit with five minutes remaining, they could not salvage the point they needed to have any realistic chance of staying up.
Getafe's hopes of European football next season appear all but over after they were held to a 1-1 draw by already-relegated Racing Santander.
After coach Luis Garcia told his players they needed to win all their remaining games to have a hope of salvaging their European dreams following a run of three defeats in four, his side fell at the first hurdle against a Racing side who managed to take a point despite missing a first half penalty.
Papakouli Diop squandered that chance in the 26th minute, but did find the net to level the match five minutes after Nicolas Fedor had put Getafe ahead from the penalty spot just before the hour mark.