Napoli kept their slim Serie A title hopes alive with a 3-2 win over Atalanta on Sunday, while AC Milan maintained their challenge for second by beating struggling Palermo 2-0, with both goals coming from Mario Balotelli.
Goran Pandev scored the winner for Napoli nine minutes from time after they had twice been pegged back by Atalanta.
Edison Cavani scored the other two, breaking a drought of eight games in all competitions - the longest in his time at Napoli.
In Milan, Balotelli fired home an early penalty before doubling his tally in the second half with his seventh goal in six games since his arrival from Manchester City.
Napoli are nine points behind defending champion Juventus, with Milan two points further back, with nine rounds remaining.
Fiorentina beat 10-man Genoa 3-2 to keep their Champions League hopes alive.
After Juventus beat Bologna 2-0 to move provisionally 12 points clear on Saturday, Napoli - who had picked up just four points in five games - knew they needed a victory to stay in touch.
They got off to a great start when Luigi Giorgi fouled Juan Camilo Zuniga and the referee pointed to the penalty spot after just three minutes.
Cavani stepped up to score his first goal since January, despite Atalanta goalkeeper Andrea Consigli getting a hand to his penalty.
Atalanta levelled just after the half hour mark with a bizarre own goal from Paolo Cannavaro. German Denis' cross was comically miskicked by Giacomo Bonaventura from five yards but he backheeled it onto Cannavaro and it ricocheted into the net.
Atalanta almost took the lead immediately after but Carlos Carmona's free kick crashed off the crossbar.
Cavani restored Napoli's lead in the 65th, squeezing a shot in between two defenders for his 20th league goal of the season.
Atalanta equalised again eight minutes later when Denis beat the offside trap to race onto a long ball, rounded Valon Behrami and drew out the goalkeeper, before lobbing into an empty net.
It looked as if Denis had ended his old club's title hopes but Pandev sidefooted home a late winner for his first goal since October.
Milan also got off to the perfect start when Balotelli won a penalty after he was pulled down by Salvatore Aronica. Balotelli, who had scored all eight of his previous penalties in Serie A and the Premier League, then converted to give his side an eighth-minute lead.
Cristian Zapata was lucky not to get sent off in the 32nd minute when he cleared Paulo Dybala's long ball with his arm. Zapata was the last man and appeared to have prevented a clear goalscoring chance but the referee only showed him a yellow card.
Balotelli doubled his tally in the 66th, tapping in from close range after Palermo goalkeeper Stefano Sorrentino spilled M'Baye Niang's cross.
Palermo remain rooted to the bottom of the table, as their miserable week continued following a fourth coaching change.
Desperate to avoid relegation, the last-place club rehired Giuseppe Sannino on Tuesday but they remain five points off Genoa, who are still very much in danger after a third successive defeat.
Alberto Aquilani returned from a ban to give Fiorentina a 33rd-minute lead. They almost doubled that advantage shortly before the break but David Pizarro's free kick was deflected onto the crossbar.
Daniele Portanova headed in the equaliser but Fiorentina were back in front four minutes later when Alexandros Tzorvas dropped Manuel Pasqual's cross and Juan Cuadrado tapped it into the net.
Luca Antonelli levelled again for Genoa but they were forced to play the last 15 minutes with 10 men after Andrea Bertolacci was sent off following a second booking.
Moments later a corner went in off Genoa defender Mattia Cassani's shoulder and Fiorentina held on for victory, which keeps them three points behind Milan.
Inter Milan are also in the running for the final Champions League spot, but their game at Sampdoria was postponed due to bad weather.
Siena, who started the season with a six-point penalty following a match-fixing scandal, are now just a point behind Genoa after a drab goalless draw against Cagliari, earlier on Sunday.
Pescara, who are level at the bottom of the table with Palermo, lost 2-0 at home to Chievo Verona with very late goals from Adrian Stoian and Cyril Thereau.