Bosnia striker Dzeko found the net 10 minutes into the second half, three minutes after Matteo Darmian had levelled for the visitors to cancel out Riccardo Sottil's first-half opener for Fiore and Perisic wrapped it up with a late strike.
Fiorentina, who had Nicolas Gonzalez sent off with 12 minutes left, are sixth on nine points after their second defeat of the season.
In Florence, Inter got off to a shaky start and found themselves trailing after 23 minutes when Sottil tapped in at the far post from Gonzalez's cross.
Inter did not panic, however, and seven minutes into the second half, Nicolo Barella's foray into the area ended with the midfielder crossing for Darmian, who found the back of the net with a low, angled shot.
Three minutes later, Dzeko headed home from Hakan Calhanoglu's corner to give Inter a deserved lead.
Fiorentina's hopes of a comeback were hit when Gonzalez picked up a second yellow card for pulling Alessandro Bastoni's shirt.
Perisic then put the result beyond doubt with three minutes left when he scored into an empty goal from Roberto Gagliardini's cross, wrapping up a fine performance from the visitors who needed a half to get into their groove.