Serie A leaders Juventus won 2-1 away to 10-man Inter Milan on Saturday, while Lazio beat Catania by the same scoreline.
Fabio Quagliarella drew first blood within the opening three minutes. Despite Rodrigo Palacio's second-half equaliser, Inter could not break down a resilient Bianconeri defence and Alessandro Matri found a winner 30 minutes from time.
Esteban Cambiasso was then dismissed for a foul on Sebastian Giovinco.
Napoli are still nine points behind Juve, however, after the Azzurri came out on top in a 5-3 thriller at Torino.
Blerim Dzemaili saw the first of his two hat-trick goals at the Stadio Olimpico cancelled out by Paulo Barreto and then Jonathas from the penalty spot.
Marek Hamsik had missed his first-half spot-kick and it looked like Napoli would live to regret it as Riccardo Meggiorini gave Torino the lead midway through the second half. But the introduction of Edinson Cavani from the bench inspired Dzemaili to a third goal before the Uruguayan striker notched twice in the last six minutes to keep his side firmly in the title race.
Meanwhile, Riccardo Montolivo's first-half goal was enough for third-placed AC Milan to claim a 1-0 win over Chievo. There was then a red card for Dario Dainelli as Chievo ended the day nine points above the drop zone.
A Nicola Legrottaglie own goal and a late Antonio Candreva strike earned Lazio a dramatic 2-1 win over top-three rivals Catania.
A brace from Mauricio Pinilla saw Cagliari seal a 2-1 victory over Fiorentina.
At the bottom of the table, Palermo closed to within three points of safety with a shock 2-0 win over Roma. A 15-match winless streak had seen the Rosanero sliding towards relegation but an early goal from Josip Ilicic gave the home faithful reason to believe. Fabrizio Miccoli then rubber-stamped all three points against an under-par Roma side who never really got going.
Palermo are now three points shy of 17th-placed Genoa, who drew 2-2 against Siena, while Roma drop to sixth.
Genoa and Siena eventually shared the spoils after a topsy-turvy game at the Luigi Ferraris. Marco Borriello gave the hosts an early lead but Siena turned the game around with goals either side of half-time from Innocent Emeghara and Alessandro Rosina, the latter from the penalty spot. But Bosko Jankovic's equaliser dumped them back into the final relegation place.
Pescara are now bottom of the pile as goals from Yohan Benalouane, Gabriel Paletta and Amauri fired Parma into 10th place with a one-sided 3-0 victory at the Ennio Tardini.
Elsewhere, Antonio Di Natale missed a penalty in Udinese's goalless draw against Bologna, with mid-table Sampdoria also drawing a blank at Atalanta despite Pedro Mba Obiang going close at the death.