Inter inflicted Fiorentina's first defeat of the season and netted a 13th consecutive league victory over La Viola in Milan. The result sees Inter move onto 13 points and grab a share of second place in Serie A. Jonathan popped up with the winner after Esteban Cambiasso cancelled out Giuseppe Rossi's penalty.
Vincenzo Montella made one change from the team which beat Atalanta 2-0. Joaquin came in for Rafal Wolski. Inter's Curva Nord stand was shut as punishment for racist chanting during their previous home game against Juventus.
Inter stormed out of the gate and had two chances to score within the first 48 seconds! Ricky Alvarez was quickly closed down after picking Massimo Ambrosini's pocket from the kick-off, before Yuto Nagatomo tested Brazilian goalkeeper Neto from distance.
Both sides went close on 11 minutes. Hugo Campagnaro's pull back across the box was just a yard ahead of Alvarez, while Joaquin supplied Rossi with a chance to sting Samir Handanovic's gloves from a wide position. Saphir Taider hit the side netting for the hosts from a counter-attack.
Fiorentina, and in particular Joaquin were getting lots of joy from hitting Inter on the break. Midway through the first half, Rossi threaded through for the Spaniard from the halfway line and Handanovic blocked the effort with his legs. Joaquin teed up Spanish compatriot Borja Valero to slice wide, before rolling a shot just inches past the far post.
The Viola lost Manuel Pasqual to a thigh injury nine minutes from the break, so Marcos Alonso came on. Before the interval, Alvarez dribbled into traffic in the box and Fredy Guarin hit his shot into the ground, before seeing it comfortably caught by Neto.
Rossi failed to take advantage of a free header straight from the restart, weakly nodding into Handanovic's gloves. At the other end, Neto palmed Guarin's effort wide from 25 yards, while Palacio ballooned an effort into Row Z.
Inter were running out of ideas and gave away a penalty on the hour. Juan Jesus brought Joaquin down as Alonso put a dangerous ball into the box. Rossi stepped up and buried the spot kick into the far corner, past the outstretched Handanovic. It was the forward's fifth goal of the season.
Mazzarri introduced Mateo Kovacic and Mauro Icardi. Guarin gestured to the crowd to show his unhappiness at being withdrawn and was ushered to sit down by his bemused coach. Thinking the result was safe, Montella brought off Rossi and Fiorentina lost their attacking edge.
The visitors gifted Inter an equaliser on 72 minutes, courtesy of a Neto howler. The goalkeeper dropped a corner and the ball wasn't cleared, allowing Cambiasso to chest it down and volley into the net.
Substitute Josip Ilicic had a chance to put Fiorentina ahead, but Handanovic was equal to the Slovenian's curler, despite having his view obstructed. Inter made their visitors pay seven minutes from the end. Jonathan received Alvarez's pass, avoided Mati Fernandez's desperate challenge, then stabbed the ball into the roof of the net from inside the box.
Inter almost got a third towards the end, as Alvaro Pereira saw an effort tipped over. The substitute opted to go for glory instead of passing to Rodrigo Palacio, who was in a better position to score. Handanovic saved one final effort from Ambrosini, denying the former AC Milan midfielder with his large frame.
Inter Milan: Handanovic; Campagnaro, Ranocchia, Juan Jesus; Jonathan, (Pereira 85) Guarin, (Icardi 67) Cambiasso, Taider, (Kovacic 61) Nagatomo; Alvarez; Palacio
Fiorentina: Neto; Tomovic, Rodriguez, Savic, Pasqual; (Alonso 36) Borja Valero, Ambrosini, Aquilani; (Vecino 78) Joaquin, Mati Fernandez; Rossi (Ilicic 69)
Goals: Rossi pen 60 (F) Cambiasso 72 (I) Jonathan 83 (I)