Martyn Woolford headed the hosts in front in the 11th minute but Sharp produced a clinical finish to draw Rovers level in the 31st minute after Rob Jones misjudged John Oster's clever pass.
Sharp then fired the visitors ahead from the penalty spot in the 59th minute after Jones had clumsily fouled him and James O'Connor headed home a third for Doncaster with minutes remaining.
The result left Scunthorpe without a win in six matches and further underlined Doncaster's play-off pedigree as they dominated the second period and had several chances to extend their lead.
Scunthorpe had begun brightly and duly led inside the 11th minute when left-back Eddie Nolan swung in a superb cross and Woolford rose highest at the far post to send a fine header into the net.
Two minutes later, the hosts almost claimed a carbon copy of their opener when another deep cross from Nolan was nodded just wide by Woolford.
Doncaster's approach play was impressive but Sharp could only head straight at Joe Murphy from James Coppinger's fine cross in the 21st minute.
Rovers defender Adam Lockwood was then booked for clattering Chris Dagnall from behind in the 24th minute.
Three minutes later, Michael Collins went close twice in quick succession with a couple of fierce drives as Doncaster struggled to keep their hosts at bay.
However, they fashioned an equaliser out of nowhere in the 31st minute after a fine pass from Oster.
The former Everton man chipped a delightful pass over the Scunthorpe defence and Jones misjudged the ball, allowing Sharp to gather possession and strike a sweet right-foot shot into the net from 12 yards out.
Not surprisingly, Doncaster grew in confidence and, after Sharp caused havoc inside the penalty box in the 40th minute, Coppinger should have done better than blaze wildly over the crossbar from just eight yards out.
Both sides threatened again before the break but defences held firm before the break.
However, seven minutes after the restart Dagnall spurned a golden opportunity to put Scunthorpe back in front.
A free-kick from Woolford found Dagnall and he volleyed the ball into the ground and saw it bounce up and smack the crossbar before the danger was cleared.
In the 59th minute, Rovers led when Sam Hird's long pass was missed by Nolan and Sharp latched onto the ball before Jones' clumsy challenged left him floored.
Sharp picked himself to fire home right-footed and O'Connor headed home a third from Coppinger's cross 13 minutes later.
Rovers continued to look dangerous and came close to extending their lead on several occasions.