Dale's smooth passing often had Rovers on the back foot, but they could hardly have expected the bonus that came their way on the half-hour when Rovers keeper Scott Shearer race to his left to bring down Lee Cartwright. It was a clear foul with the only question, because of indistinct pitch marking, being whether the foul was inside the penalty area.
Referee Jamail Singh decided it was a penalty and Grant Holt's spot-kick was hammered high into Shearer's net for his13th goal of the season.
The brisk opening was interrupted by Michael Leary who clattered into Blair Sturrock to collect his seventh yellow card as he started a third month on loan from Luton.
Sturrock, who had come in for Rickie Lambert, took time to recover but Holt was always there to trouble home defenders.
A high ball headed down by Richard Walker got Rovers back into the game. It fell perfectly for Junior Agogo to claim his10th goal of the season as he steered his shot well away from Matthew Gilks.
A great ball almost on the hour from Alan Goodall almost put Rochdale back in front, but Shearer denied them as he dived to keep out Sturrock's shot.
Shearer then made another diving save from Tommy Jaszczun, but was at fault when Rochdale finally reclaimed the lead on 65 minutes, Sturrock beating him at the far post after Cartwright had crossed deep on the right.
It gave Dale a win they fully deserved, although Agogo almost snatched an equaliser in time added on, turning a shot against the foot of the post.