Barry Robson’s first-half free-kick ensured a dismal finale to Rovers’ season, with Leroy Lita’s neat finish and debutant Adam Reach’s late goal adding to the South Yorkshire side’s woes.
Both sides started brightly, Doncaster’s John Oster clipping wide after four minutes. Marvin Emnes responded immediately for the hosts but drove his shot beyond Neil Sullivan’s goal.
Boro waited until the 13th minute to unleash a five-minute onslaught on Sullivan’s goal. Robson manoeuvred in acres of space to strike, but the former Leeds stopper caught well.
Emnes then found himself on the end of a fluid passing move and shaped to shoot, only for Sullivan to deny the Dutchman with a firm catch.
Lita, who was looking to score his 100th career club goal with a brace, had the best early chance to break the deadlock. The former England under-21 international struck the ball well but Sullivan saved superbly to keep Rovers level.
The disappointment of the profligate forward line rippled through the entire home side, with Rovers boss Sean O’Driscoll reorganising his team to restrict Boro’s chances on goal.
Visiting midfielder Franck Moussa came to the fore in the 31st minute. His first effort of three audacious strikes sailed over the crossbar, but a minute later he had Jason Steele at full stretch with a low drive to the keeper’s near post.
Six minutes later, defender Justin Hoyte saved Boro’s blushes with a brave block from another accurate Moussa drive.
It appeared that beleaguered Doncaster, without a win in their previous 11 league outings, would head into the break with the psychological edge when Sullivan saved yet another fine effort from Lita.
However, when Wayne Thomas brought Lita down on the edge of the area, Robson stepped up to whip a free-kick into the net with 43 minutes played.
Teenager Reach was introduced for goalscorer Robson shortly after the break, as Boro continued their tradition of blooding youngsters on the final day of the season.
Billy Sharp replaced Moussa on the hour mark and almost had the visitors level with a swerving strike which Steele claimed with difficulty, but Rovers were beaten when Lita bagged his 99th club goal in the 65th minute.
Andrew Taylor picked the ex-Reading striker out in the box for him to deftly slot home and put the hosts on the road to a fourth straight league win.
Doncaster were clutching at straws in the final throes, Sharp sending a tame effort into Steele’s arms in the 75 minute.
Nineteen-year-old Reach then made it a debut to remember deep into injury time, latching onto Kevin Thomson’s through ball and blasting home to condemn Rovers to 21st place, as Boro snatched the last spot in the top half of the table.