The Devil Rays owned an 8-2 lead through four innings and then saw Florida score 12 times in a span of three frames. The Marlins climbed to the .500 mark for the first time in a month.
Hermida brought Florida within 8-6 with his grand slam in the fifth and the Marlins took a 9-8 lead in the sixth when Aaron Boone drew a bases-loaded walk.
The Marlins added five runs in the seventh, with Josh Willingham hitting a three-run triple.
Stokes (2-6) was removed from the game after his pitch struck Navarro and the Tampa Bay bull pen collapsed.
Justin Miller (2-0) threw one inning of relief to get the victory.