Ian Bell was 95 not out from 228 balls with 12 fours and his unbroken partnership of 108 with Stuart Broad has transformed the test at Trent Bridge.
Broad made a controversial 47 not out from 122 balls, which included five fours but only after he was given not out despite clearly edging Ashton Agar to Michael Clarke at slip — a decision Australia was unable to overturn having wasted its referrals.
While reporters and pundits questioned Broad's decision to play on, Australia's Peter Siddle tried to play down the situation.
"How many people have ever walked?" Siddle said. "It's the umpire's decision, you just take it. You finish the over and go to the next over. If you'd watched it out there we didn't make a big thing of it."
A prickly Kevin Pietersen defended his team's — and the umpire's — honour.
"We play hard, we play fair," he said. "Each individual player in the middle has the responsibilty to wait for the umpire's decision. Aleem Dar is fantastic umpire."
Mitchell Starc had the best bowling figures with 2-66 for Australia, which had been on top for the first two sessions until Bell's discipline and Broad's brinkmanship turned the contest back in England's favour.
The hosts began the third day on 80-2, and after two days of unrelenting drama the first hour was comparatively slow+.
Pietersen (64) brought up his 50 with a drive off Starc in the 50th over, and Cook whipped Agar through midwicket to bring up the century partnership in the 54th. But there were few chances until Pietersen dragged Pattinson onto his stumps on the final ball before the drinks break three overs later with 121 on the board.
Cook reached his 50, from 164 balls, with a single from Agar, but the 19-year-old Australian removed him in the 60th with an off break that Clarke took high over his head to leave the total on 131-4.
The dismissals slowed an already pedestrian run rate, best exemplified by Shane Watson bowling 34 balls before England managed a scoring shot against him.
Australia used its final referral in the 69th over, claiming an lbw decision against Bairstow from a ball that was drifting considerably down leg side and this wastefulness would return to haunt them.
Bell was given lbw to Watson in the 79th over but he successfully referred the decision, to raucous cheers from the crowd when a replay showed the ball was missing leg stump.
By this stage, every single was being cheered, but in the next over, Agar had Bairstow caught behind.
Matt Prior looked well set until he was caught by Ed Cowan trying to pull Siddle through midwicket, ending a useful stand of 44.
Bell reached his 50 with two runs off Pattinson, and he scored his 6,000th test run shortly before tea.
Broad rode his luck throughout the evening session. He might have been given out lbw to Agar had Australia not used up its reviews and his knock included an all-run four, but he also produced a classy cover drive off Starc to bring up the 50 partnership and a driven four from Pattinson as Australia's frustration mounted.
Cowan missed a difficult chance to catch Broad, who was on 37, at short leg off Agar and in the 118th over he was caught by Clarke at slip only to be given not out by Aleem Dar, despite Australia's protests.
In the 129th Broad cut Watson through point to bring up the hundred partnership and take England's lead past 250.
As Australian tempers boiled over Pattinson was given a verbal warning by umpire Kumar Dharmasena for an excessive appeal after Bell was correctly given not out lbw in the next over and England ends day three in a far better position than looked likely at tea.
"I'd be foolish to say we've got enough," Pietersen said. "Cricket's a funny game, but in our dressing room we'd rather be 261 ahead."
Siddle admitted it had been "a long day" but was still optimistic.
"I think we're still in a very good position," he said. "Tomorrow we're going to be fresh and ready to go. The first hour's going to be crucial. It's a beautiful wicket to bat on now so we've got to get those four wickets and give ourselves a chance."