Kraigg Brathwaite and Jermaine Blackwood both hit centuries to keep England's bowlers largely at bay as the West Indies held solid for much of day three.
Brathwaite and Shamarh Brooks headed out in the first session with the Windies on 71-1, but the latter fell on 39 inside the opening 30 minutes of the day when he sliced Jack Leach's delivery to Chris Woakes.
Ben Stokes struck shortly after coming into England's attack midway through the session, dismissing Nkrumah Bonner for nine lbw, as the tourists look set to enjoy another fine day after declaring on 509-7 on Thursday.
Stokes should have had Blackwood lbw, only for the umpire to decline their appeals, with Joe Root choosing not to review.
That was swiftly proved a mistake, with the replay showing the ball would have hit halfway up leg stump, Blackwood then surviving an lbw review for what could have been Saqib Mahmood's first Test wicket.
Braithwaite and Blackwood made the most of their fortune, frustrating England throughout the second session to reach tea at 196-3, on 79 and 50 respectively.
Windies skipper Brathwaite nudged Leach for two to bring up his century from 278 balls, and his control remained as he allowed Blackwood to stake centre stage.
Blackwood picked off some sloppy Stokes deliveries, though he very nearly edged Leach to Dan Lawrence before he clipped England's spinner for a single to bring up his third Test ton.
His stand finally came to an end on 102, when Lawrence trapped him lbw but, despite a late review against Alzarri Joseph, West Indies held on to reach stumps on 288-4.
Brilliant Braithwaite leads by example
Braithwaite was quite simply sensational, with his 109 not out coming from 337 deliveries so far, and he will be there again at the start of day four.
He now has 10 Test centuries, with three of those having come against England.
A long day for England's bowlers
News of Mark Wood's tour-ending injury came at the start of the day and it was a difficult time for England's bowlers.
Leach has already bowled 44 overs, but has just one wicket to show for it, while Stokes has an economical 1-34 to show for his efforts, though it took a cameo from Lawrence (1-8) to make the late breakthrough.