Roberts, who joined the Rams from Rovers in May 2010, doubled Derby's lead 10 minutes into the second half after Theo Robinson had put the visitors ahead in the 13th minute.
El-Hadji Diouf pulled a goal back for Doncaster with 23 minutes remaining but Dean Saunders' side could not save their five-match unbeaten streak and slipped four points adrift of fourth-bottom Bristol City after their goalless draw at Portsmouth.
Shelton Martis returned from a groin injury for Doncaster, replacing Sam Hird in defence. It was the only change made by Saunders - a former Derby player. Ex-Rams midfielder Giles Barnes started against his old club.
Rookie defender Tom Naylor made his full debut for Derby as boss Nigel Clough made three changes.
Naylor, signed from Mansfield in November, lined up at right-back, allowing former Doncaster man Paul Green to move up into midfield.
Elsewhere, Callum Ball was recalled up front as Steve Davies and Nathan Tyson dropped to the bench. And, as expected, Jake Buxton came in for injured skipper Shaun Barker at the heart of the back four.
Rams left-back Roberts and centre-half Jason Shackell also started against their former club.
Ball worked Carl Ikeme early on but the teenager's shot produced only a routine save from the Doncaster goalkeeper.
Derby had began where they left off against east midlands rivals Nottingham Forest in midweek and Robinson gave them the lead with his 10th goal of the season after 13 minutes.
Robinson chased down a long ball forward before lobbing the advancing Ikeme, who perhaps made it easy for the Rams forward by rushing out.
Diouf had Doncaster's first real chance but his header from 12 yards went over the crossbar.
Ikeme atoned for his earlier error midway through the first half by pushing a volley from Roberts out for a corner.
But there was little Ikeme could do to deny Roberts a goal in the 55th minute.
After a neat one-two with Robinson, Roberts drilled a shot into the left corner of the net from 12 yards.
Barnes and Frederic Piquionne had chances as Doncaster creeped back into the game and Rovers gave themselves a lifeline after 67 minutes with Diouf's goal.
Diouf controlled a flicked-on cross on his chest with his back to goal before swivelling and beating Frank Fielding with a shot from six yards.
However, no onslaught was forthcoming as Derby defended stoutly to keep Rovers at bay.
Kyle Bennett had the hosts' only chance of note to equalise but the former Wolves trainee dragged his shot wide in injury time.