The West Indies were 329 for five at stumps, 71 runs ahead of England's 258.
Opening batsman Brathwaite (134) and Shai Hope, whose 147 not out was his maiden Test century, put on 246 for the fourth wicket.
The Barbados duo's partnership was all the more impressive as they came together with the West Indies in trouble at 35 for three after James Anderson had dismissed Kyle Hope, Shai's older brother, to move to within five wickets of becoming the first England bowler to take 500 in Tests.
It was easy then to foresee another West Indies collapse, given they had been skittled out for just 168 and 137 during an innings and 209-run defeat in the day/night series opener at Edgbaston, with England taking 19 wickets on last Saturday's third day to go 1-0 up with two to play.
But having starred in a markedly improved bowling display to dismiss England on Friday, paceman Kemar Roach said he wanted the batsmen to follow the bowlers' lead.
They did just that, with Brathwaite and Shai Hope providing fresh vindication of the faith that West Indies coach Stuart Law had insisted he retained in a talented if raw side.
Law had forecast daytime conditions would prove more to the tourists' liking than some 'chilly' evenings in Birmingham and, on this evidence, it was hard to disagree with the former Australia batsman.
- Woakes woes -
Brathwaite and Shai Hope's stand made England's decision to drop third seamer Toby Roland-Jones look all the more curious.
Roland-Jones had taken 14 wickets in three Tests at an average of under 20 apiece since making his debut in England's preceding 3-1 home series win over South Africa.
Nevertheless, he was omitted at Headingley, with England recalling fit-again all-rounder Chris Woakes.
But Woakes too often bowled short and at stumps he had figures of none for 58 in 13 overs.
After the West Indies resumed on 19 for one, Anderson made short work of nightwatchman Devendra Bishoo and Kyle Hope on his way to brilliant lunch figures of three for 10 in 12 overs, having accounted for Kieran Powell on Friday.
But Brathwaite and Shai Hope were rewarded for their watchfulness against Anderson when conditions eased as the sun broke through.
Brathwaite, who resumed on 13 not out, successfully reviewed lbw decisions on 35 and 46, after getting an inside edge to Stuart Broad and being outside off stump playing a shot to off-spinner Moeen Ali.
The very next ball after Ali's appeal was overturned, Brathwaite drove him for six to go to fifty.
After lunch, Shai Hope completed his fifty when he drove Woakes down the ground for his ninth four in 72 balls.
Shai Hope did give a chance on 72 when a whip off Ali flew to short leg where Mark Stoneman, back on his heels, could not hold a tough catch.
Root gave the last over before tea to Tom Westley, rather than bowl his own occasional off-spin.
Having reached his fifty with a six, Brathwaite went to his hundred with another when he lofted Westley's fifth ball high over long-on.
It was a stylish way for the 24-year-old to complete his sixth hundred in 39 Tests off 189 balls, also including 13 fours.
Shai Hope, 85 not out at tea, went to 99 with a pulled four up on one leg off Ben Stokes.
The next delivery saw the 23-year-old take a single off all-rounder Stokes that gave him a maiden century in his 12th Test off 159 balls, including 17 fours.
England eventually broke through with the new ball when Brathwaite's more than six-hour innings ended when he was bowled by a Broad delivery that kept low.
England vs West IndiesEngland vs West Indies 2017England vs West Indies 2nd TestKraigg Brathwaiteshai hope
First Published: August 26, 2017, 11:18 PM IST