Goals in each half from Ben Knight and Oli Finney secured the hosts’ comfortable passage into the last 16 stage of the competition.
The battle between League One’s bottom two at Gresty Road saw Doncaster behind at the interval, with Knight on target when he fired home from outside the box.
The Alex opened the brighter of the two teams, with Callum Ainley finding space early on before firing straight at a grateful Louis Jones. Rovers replied when Connor O’Riordan’s effort only just cleared the crossbar after he met Joe Dodoo’s through-ball.
Tiago Cukur also went close at the end of a goalmouth scramble.
At the other end the woodwork saved Rovers when Mikael Mandron’s glancing header struck the crossbar.
Rovers almost levelled in the 61st minute. Dodoo saw a shot bravely blocked, then Tommy Rowe fired the rebound straight at a grateful Will Jaaskelainen.
Time was beginning to run out for Rovers, and an unmarked Luke Offord blasted over from a terrific position, before Finney headed home Knight’s precise cross.
Crewe: Jaaskelainen, Woodthorpe (Tabiner, 77), Thomas, Offord, Knight, Ainley (Johnson, 46), Mandron, Finney, Murphy, Gomes (Lundstram, 46), O’Riordan. Unused substitutes: Richards, Adebisi, Long, Sass-Davies.
Doncaster: Jones, Knoyle, Anderson, Olowu, Barlow (Hasani, 56), Dodoo, Cukur (Kuleya, 68), Smith, Hiwula, Galbraith, Horton (Rowe, 46). Unused substitutes: Dahlberg, Blythe, Ravenhill, Faulkner.
Referee: R Joyce (England).