Leicester struggled to gain control of the game and the South Yorkshire team went close again through Nick Daws, before Richie Barker hit wide from 10 yards out.
However the home side gradually clawed their way into the game and forced three corners in quick succession in the space of two minutes, but Barker and Chris Swailes headed away the danger.
Midfielder Alan Rogers then forced keeper Mike Pollitt into making the first save of the game with a left-foot effort.
Rotherham started the second period strongly and Garner shot wide when he should have scored in the 49th minute.
But it was Leicester who took the lead in the 60th minute when Paul Dickov beat Pollitt to a Rogers' free kick and flicked the ball into the net, for his eighth goal of the season.
The Foxes then clinched the points when Jordan Stewart's long-range strike flew into the top corner four minutes later.
Martin McIntosh then pulled one back for the Millers, heading home a Garner cross, but the Foxes held on for a deserved victory.