Knights fourth successive win over a side often regarded as being one of their bogey teams, stretched their unbeaten league run to 11 games.
The result was even more pleasing for director of rugby Clive Griffiths given the fact that he lacked the services of full-back Paul Jarvis, centre Mat Clark, wing Dougie Flockhart and No 8 Ollie Stedman, who bagged a brace in the 28-11 win at Castle Park earlier in the season.
Looking to get back to the form which saw them win nine of their previous 11 league and cup games prior to successive away defeats, Pirates made a solid start and took an early 5-0 lead with a try by centre Jack Arnett.
Knights drew level on when leading try-scorer Latu Makaafi got the touchdown from a driving maul.
Declan Cusack, switched from his usual fly-half role to cover for Jarvis, missed the conversion but made amends when hitting the target from a 40th minute penalty to secure his side a confidence-boosting 8-5 interval lead.
It took Knights, who were playing into the wind, five minutes to get into the Pirates half after the break. But, as has happened so often this season, they scored first.
Makaafi was stopped just short following some excellent build-up play but scrum-half Michael Heaney celebrated a new contract in midweek when scoring from the resulting ruck.
Cusack tagged on the difficult conversion to make it 15-5. The Irishman, who haa agreed a new deal with the club, extended Doncaster’s lead to 13 points with a 52nd minute penalty.
Pirates’ first real pressure on the Doncaster line since the restart went unrewarded as Knights dug deep.
Their hopes of picking up any sort of result suffered another setback at the start of the final quarter when Cusack again found his range from a penalty kick to make it 21-5.
Their spirits rose, however, following a 65th minute converted try by Tyler Gendall from a driving maul after Knights had been penalised at a lineout.
With Pirates needing to score twice to win the game and the clock running down, Knights remained in the driving seat.
They finally sunk the Pirates following a rare try by Canadian international second-rower Jon Phelan, on the back of good work by hooker Ben Hunter and Heaney, in the dying minutes.
But Pirates had the final word, touching down for the last try of the game following some snappy handling from a tap penalty. Fly-half Kieran Hallett added the extras with the last kick of the game to secure his side a losing bonus point.
The day belonged to Knights, though, and with defeats for both Yorkshire Carnegie and Bedford over the weekend, a top-two finish looms ever nearer.
Cornish Pirates: May; Arnott, Hendrickson, Dancer, Evans; Hallett, Day; Walker, Channon, Paver, Graulich, Beukebroom, Cheeseman, Simmonds, Carpenter.Rep: Innard, Gendall, Jamieson, Garratt, Bolwell, Oulton, James.
Doncaster Knights: Cusack; Bulumakau, Catchpole, Hurrell, Lewis; Humberstone, Heaney; List, Hunter, Quigley, Challinor, Phelan, Makaafi, Hills, Shaw. Rep: Stagg, Sprotson,John, Owen, Armitage, Field.