Max Clayton had fired Crewe ahead, but Paynter came off the substitutes' bench and netted twice in four minutes to ensure Rovers stayed in pole position.
Crewe had the first real opening when Chucks Aneke slipped in Byron Moore, but his first-time shot was tipped away by Doncaster goalkeeper Neil Sullivan and Aneke smashed the rebound against Jamie McCombe.
Rovers striker Iain Hume then tried to chip Alan Martin, but the Crewe goalkeeper plucked the ball from the air before pulling off an amazing reflex save to deny the Canadian from poking home from three yards.
Hume was at fault when Crewe broke the deadlock in the 54th minute. The Rovers striker gave the ball away to Aneke, who picked out Clayton to place a perfect finish into the far corner.
Martin pulled off another superb save to stop Rob Jones's header crossing the line, but he could do nothing to prevent Paynter drilling in a 20-yard equaliser in the 66th minute.
Four minutes later Paynter rifled home Jamie McCombe's flick-on from eight yards out to complete the turnaround.