Late goals from top-scorer Adam Boyd and substitute Jabo Ibehre saw Leyton Orient record their first win in eight games.
Wayne Gray had given the home side an early lead before Rovers hit back to level through Rickie Lambert, but it was not enough to end their miserable run.
Rovers started brightly and almost grabbed an early lead but Byron Anthony headed wide of the mark.
But Orient were guilty of an even worse miss four minutes later when Jason Demetriou's corner bobbled in the six-yard box and Gray blasted over from close range.
But Orient's striker atoned for his error on 11 minutes when he latched onto a John Melligan pass only to be felled by visiting keeper Steve Phillips.
Gray picked himself up and rolled the penalty into the net as the keeper dived the other way.
Orient failed to press home their advantage and on 29 minutes Lambert sent a powerful close-range header into the net following a right-wing cross from Stuart Campbell.
Sean Rigg just failed to poke home a second for the visitors following a great run from Chris Lines.
After the interval Rovers should have netted a second when David Pipe's run and cross found Craig Disley, but he was denied by a brilliant save from home keeper Glenn Morris.
But then it became the Ibehre show. On as a half-time substitute for Gray, the striker saw a header handled on the line by Aaron Lescott, but referee Robert Shoebridge waved play on.
Then Ibehre hit the post with another header before he was denied by a first-class save from Phillips.
But there was no stopping Orient and Boyd netted on 81 minutes - his 14th league goal of the season - following Paul Terry's shrewd ball.
Then Ibehre scored the goal he deserved when he headed home a horror clearance from Rovers defender Steve Elliott, who had ballooned the ball into the danger area.