Rodriguez headed home a corner midway through the second half to keep the hosts in contention for a top-four place.
The goal came just two minutes after Ibrahima Mbaye had hit the bar for Livorno, who had chances to equalise.
Rodriguez had to clear an effort off the line, but La Viola still deserved the three points for a match they dominated for long periods, despite struggling to find a way past their relegation-threatened opponents.
The visitors had the first sight of goal as Pasquale Schiattarella's long-range effort flew wide, but that was a rare threatening moment from Livorno.
At the other end Josip Ilicic shot over and then played a one-two with Juan Cuadrado, who also fired high from the edge of the area.
Giuseppe Rossi finally got one on target, but his shot was straight into the arms ofLivorno goalkeeper Francesco Bardi.
Borja Valero's corner was then volleyed over by Facundo Roncaglia, while Valero himself missed the best chance of the half five minutes before the break when he missed a tap-in from Alberto Aquilani's ball across the six-yard box.
Marco Benassi almost shocked the hosts early in the second half, but shot wide from the edge of the area following a counter-attack.
Fiorentina soon took up the baton again and Cuadrado forced Bardi into a diving save and the keeper then did well to turn behind a Juan Vargas effort from a low Rossi cross.
The home side survived a major scare in the 64th minute when a Mbaye header from Leandro Greco's free-kick thumped against the bar.
And two minutes later Fiorentina took the lead, Valero swinging in a corner and Rodriguez heading powerfully inside the far post.
The busy Bardi then punched away a Valero free-kick, but Livorno came close to levelling in the 77th minute as Paulinho's shot beat keeper Norberto Neto, but was cleared off the line by Rodriguez.
Neto then saved Marco Benassi's follow-up effort before producing an ever better stop from the same player.
Fiorentina finished the game in the ascendancy, though, as Cuadrado shot wide and then saw his cross go inches past a post.