Amauri winner dents Milan challenge
Amauri fired home from outside the box to secure three much-needed points for Delio Rossi's side, whose unexpected victory lifted them five points clear of the relegation zone.
Defeat means AC Milan are in danger of surrendering top spot to Juventus, who are kicking off later today. They had taken the lead too, going ahead through Zlatan Ibrahimovic's penalty, only to be pegged back by Stevan Jovetic and Amauri.
"We need to accept the result in the knowledge that there are still a lot of matches left [seven] and everything is still wide open," Milan coach Massimiliano Allegri said.
"It's been a bad week with the defeat to Barcelona [which saw Milan eliminated from the UEFA Champions League] and this one but we have to regroup because there's still everything to play for.
"We have to stay calm, we didn't expect to stumble here but we have to be even more fired up because of what we've wasted."
Fiorentina were far more effective as an attacking outfit in the opening minutes, Jovetic's effort going narrowly past the left post before Houssine Kharja fired just over.
Sulley Muntari was just wide for Milan but Lorenzo De Silvestri brought a good save out of Christian Abbiati in the bottom left-hand corner.
Ibrahimovic hands hosts the lead
However, it was the hosts who took the lead just after the half-hour mark from the penalty spot. Matija Nastasic fouled Maxi Lopez in the box and Ibrahimovic slotted into the bottom left-hand corner.
The goal seemed to awaken the league leaders, Lopez hitting the post with a left-footed shot before Jovetic was again close with a left-footed effort.
However, Fiorentina got a deserved equaliser just two minutes after the break with Jovetic's endeavours rewarded following a pass by De Silvestri.
The same player twice brought saves from Abbiati while Lopez almost restored his side's lead when his close-range effort was repelled by Fiorentina goalkeeper Artur Boruc.
Gianluca Zambrotta and Robinho both went close for Milan but the game appeared to be heading for a draw until Fiorentina's late intervention.
Again Jovetic was involved, providing the pass for Amauri, whose right-footed shot from the middle of the area went into the bottom left-hand corner for three priceless points.