|Giampaolo Pazzini fires Inter Milan into the lead against Fiorentina [GALLO/GETTY]
AC Milan may have secured the scudetto on Saturday with a 0-0 draw against Roma but second and third place are still up for grabs in Serie A.
However, Napoli couldn't close the gap on Inter Milan in second after a disappointing 2-1 loss to Lecce on Sunday. Lecce are now four points behind Inter Milan - who fought to a 3-1 victory over Fiorentina.
Daniele Corvia gave Lecce the lead with a penalty before he was sent off himself. Giuseppe Mascara equalised, but any hopes Napoli had of winning disappeared down the tunnel with Cavani 16 minutes from time.
His fellow Uruguayan Ernesto Chevanton then hit a spectacular, but controversial, winner with a half volley from the edge of the area that Napoli claimed had not crossed the line.
"Lecce won with a great shot, but there was a penalty before that we should have been given,'' Napoli coach Walter Mazzarri said.
"It has been a long season for Cavani since the World Cup and he's tired. He got frustrated today because the more he tried to score, the less likely it seemed."
Inter meanwhile bounced back from losing the league title to city rival AC Milan, with a convincing 3-1 win at home to Fiorentina.
Antonio Di Natale scored twice in Udinese's 2-0 win over Lazio to take his tally to 28.
Lazio's loss means Napoli are guaranteed a place in next year's Champions League, but if they lose their last two games and Udinese wins both, then Udinese will take the automatic qualification place as they won both matches between the sides this season.
At the bottom of the table Brescia were relegated after a 2-1 loss to Catania. Also Bologna and Parma drew 0-0, while Cesena won 2-0 away to Cagliari.
In Lecce's match with Napoli, Lecce had a good chance to go ahead early on when Gianni Munari shot into the side netting from close range.
Soon after the break the hosts took the lead, when Corvia fired home a penalty after Ruben Olivera was brought down by Hugo Campagnaro.
Soon after Corvia was sent off when he was booked for a second time for tripping Ezequiel Lavezzi. It didn't take Napoli long to take advantage of its numerical superiority when Mascara was left unmarked to head in Juan Zuniga's cross from close range.
In the 74th Cavani allowed his frustrations at not scoring boil over and received a second yellow card for taking his protests to the referee too far.
Lecce took advantage two minutes from time when Chevanton struck. The ball bounced over the line, Napoli goalkeeper Morgan De Sanctis quickly grabbed the ball and claimed it hadn't, despite replays showing the opposite.
At the San Siro, Fiorentina had the first chance of the match, but Julio Cesar tipped Alberto Gilardino's volley onto the bar.
Two minutes later Inter hit the woodwork after Pazzini turned and shot, but Artur Boruc flicked his effort onto the bar.
There was nothing the Polish goalkeeper could do to stop Pazzini from opening the scoring in the 25th. Samuel Eto'o crossed and Pazzini held of Cesare Natali to turn and shoot low past Boruc.
Inter were two goals ahead three minutes later when Cambiasso flicked Eto'o's free-kick over Boruc for his seventh goal of the season.
"It was a difficult match to get to grips with," Inter coach Leonardo said.
"But the way we took control and adapted is a step forward for our maturity and cohesion as a team."
Just before the break Alessio Cerci stabbed Gaetano D'Agostino's low cross wide and Boruc used his legs to stop Maicon's low drive.
Gilardino gave Fiorentina some hope when he beat the offside trap to volley past Cesar, but moments later Coutinho curled a freekick over the wall to take Inter's lead back to two goals.
"I'm pleased for him," Leonardo said.
"He's a good player with excellent technique, but he hasn't been able to find a place in the team because it has changed so much."