A wicketless afternoon session solidified the hosts as heavy favourites to level the series with Denly reaching a career-best 82 not out less than two days after the birth of his second child and Stokes unbeaten on 57.
Both had awkward moments, Australia failing to review a sound lbw shout against Denly on 54 and putting Stokes down twice after lunch, but their century stand had successfully sapped the tourists' enthusiasm with a score of 193 for two.
England resumed on nine without loss having scraped through a tense four-over session on the second evening, during which Denly was dropped on nought.
After eight overs Tim Paine turned to spin, but Nathan Lyon was quickly put on the back foot by Denly. Having taken three balls to size him up, the opener skipped down the track twice in a row, hitting straight and true for four and six.
Lyon's next visit brought four more down the ground and when Burns punched Peter Siddle straight it brought up the first opening stand of 50 this summer.
But that was as good as it got, Lyon getting Australia on the board with a short, wide delivery that Burns (20) stretched for and nicked behind.
The captain pushed forward at a gentle off-break but a slight misjudgement saw him held by Steve Smith as slip, leaving the score at 88 for two by lunch.
That placed them 157 ahead, a formidable position they spent the next two hours improving on.
Australia could have nipped things in the bud when the freshly arrived Stokes had just seven, Smith fumbling when the left-hander mis-hit a cut off Lyon.
Instead the game began to slip away, England's hundred ticking by with Denly then chalking up a fourth Test fifty with a neat clip to leg.
Stokes was soon joining in, launching Lyon for six to stretch the lead beyond 200.
Mitch Marsh was sure he had Denly lbw on the back pad but neither umpire Marais Erasmus nor Paine were persuaded. Both waved away his appeals only for replays to show the ball thudding into leg stump.
At this stage Australia could simply not get it right. Stokes called twice for dangerous singles only for errant throws to spare him being run out and, after reaching fifty with six more off a Marnus Labuschagne full-toss, he was put down by Cameron Bancroft after offering a tough low chance at short-leg.
A single took Denly past his previous Test best of 69 and he helped himself to three boundaries before the break intervened.