Barcelona had to come from behind to beat struggling Real Zaragoza 4-1, who finished with 10 men and also had coach Manolo Jimenez sent to the stands.
Carlos Aranda, who had already missed a penalty, put the home side ahead but Lionel Messi and Carles Puyol took less than 10 minutes to turn the game around.
Abraham Fernandez was dismissed late in the first half and Jimenez early in the second before an 86th-minute penalty yielded Messi's 60th goal of the season and Pedro Rodriguez added a fourth.
Barca close the gap on Real Madrid to three points, and the leaders entertain third-placed Valencia on Sunday.
Michu scored twice as Rayo Vallecano all-but sealed their survival with a stunning 6-0 win over Osasuna.
Jose Maria Movilla got the hosts off to the perfect start as he volleyed home on five minutes before Michu headed in his first from Tito's cross.
Michu tapped home his 15th goal of the season 11 minutes later after a fine run and cross by Diego Costa and the Brazilian himself curled in a wonderful fourth before half-time.
Osasuna coach Jose Luis Mendilibar attempted to stem the tide with three substitutions at the break but the goals continued to come for Rayo as Emiliano Armenteros rounded off a fine team move and Tito completed the rout with an easy finish 11 minutes from time.
Real Betis took an important step towards survival with an emphatic 3-1 home win over relegation rivals Villarreal.
Quickfire goals from Roque Santa Cruz and Ruben Castro at the end of the first half set Betis on their way before Benat made the points safe on the hour.
Villarreal's miserable night got worse when Angel Lopez was harshly given a second caution for handball on 66 minutes as they remained four points above the drop zone.
Villarreal got some consolation in injury time when Marco Ruben tucked away a penalty after home goalkeeper Agosto Fabricio brought down the Argentinian.
It mattered little though as Betis could reflect on a crucial win to move them 10 points clear of danger.
Goals from Miku and Diego Castro pushed Sporting Gijon ever closer to the Segunda Division as Getafe emerged victorious 2-0 at the Alfonso Perez stadium.
Venezuelan forward Miku grabbed the first after 20 minutes and when the second arrived early in the second half there was no way back for Sporting, who have now failed to win any of their last five games and stay bottom of La Liga.
Espanyol and Real Sociedad fought out an entertaining 2-2 draw which did neither side's ambitions any real favours.
The home side needed a win to boost their flagging Champions League aspirations, while Sociedad were looking for three points to end any fears of being dragged into the relegation battle.
But both sides had to settle for a point after Espanyol recovered from 2-0 down, with all four goals coming in rapid bursts of action.
Carlos Vela scored in the 12th and 15th minutes to put the visitors in command, but an own goal from Vadim Demidov on the stroke of half-time and an equaliser from Vladimir Weiss just three minutes into the second half ensured the spoils were shared.