Catania 3-1 Inter MilanDiego Milito put the Nerazzurri in front in the 54th minute, but Catania refused to accept defeat and Maxi Lopez equalised 20 minutes later.
Sulley Muntari was sent off after only two minutes on the field as he gave away a penalty which was converted by Giuseppe Mascara in the 81st minute.
And Jorge Martinez sealed a deserved and important win for the Rosazzurri in the last minute.
AC Milan 1-0 ChievoAC Milan's 1-0 win over Chievo on Sunday night - but the win was marred by an Achilles tendon injury to David Beckham.
The former England captain, who has won 115 caps, has been ruled out of the World Cup finals this summer with the injury, which came in the latter stages of Sunday night's win.
Substitute Clarence Seedorf scored a stoppage-time winner to lift AC Milan to victory over Chievo at the San Siro.
The Dutch midfielder entered the game with 11 minutes remaining and knocked in the only goal to pull the Rossoneri to within one point of leaders Inter Milan.
Livorno 3-3 AS RomaThird-placed Roma were held to a 3-3 draw by relegation-threatened Livorno, for whom Cristiano Lucarelli netted a hat-trick.
Simone Perrotta (2) and Luca Toni were on target for the Giallorossi, who squandered the lead on two occasions and also missed a penalty on an afternoon of frustration for coach Claudio Ranieri.
Italian Serie A Top Six Standings
Team Pl W D L Fr Ag Pts Inter Milan 28 17 8 3 53:25 59 AC Milan 28 17 7 4 47:26 58 AS Roma 28 15 8 5 48:32 53 Palermo 28 13 7 8 40:34 46 Juventus 28 13 6 9 45:39 45 Sampdoria 28 12 8 8 35:34 44