Jason Holder led by example to leave West Indies scenting a long-awaited Test victory, but Mark Stoneman and Joe Root gave England hope on a gripping day three at Headingley.
The tourists were ridiculed after a crushing loss at Edgbaston last week, but are on course for a first Test win on English soil for 17 years with two days remaining.
Holder took two wickets as England closed on 171-3 on a glorious Sunday in Leeds, leading by only two runs after the Windies were bowled out for 427.
James Anderson (5-76) got England off to a dream start by claiming wickets with the first two balls of the day - centurion Shai Hope the first to go - but Moeen Ali dropped a simple chance to get rid of Jermaine Blackwood in the next over from Stuart Broad on 21.
That took the wind out of England's sails, enabling Blackwood (49) and Holder (43) to put on 75 for the eighth wicket to give West Indies a first-innings lead of 169.
Stoneman (52) scored a maiden Test half-century despite taking a blow on the finger and captain Root is still there on 45 after he was dropped before he also succeeded with a review after being given out leg before to Holder, the pick of the Windies bowlers.
0 - West Indies have never lost a Test match after amassing a first innings lead of 150+. Challenge.-- OptaJim (@OptaJim) August 27, 2017
Hope (147) made England suffer on day two, but the excellent Anderson had the centurion caught behind and Shane Dowrich edged his first delivery to Root in the slips in a dream start for England.
Blackwood should have gone in the second over of the day, but Moeen inexplicably put him down off Broad at mid-on and that proved to be costly.
Moeen took a far more difficult chance to end a frustrating stand by running back from mid-on to make Holder, who struck seven boundaries, Chris Woakes' first victim and Blackwood also missed out on a half-century when he was run out.
Stoneman dropped Shannon Gabriel off Moeen and the paceman struck the spinner for six to add insult to injury before Ben Stokes - on the verge of a ban after being reprimanded for comments made to Hope on day - two trapped him leg before.
Holder showed his prowess with the ball by getting Alastair Cook (23) caught behind and the under-pressure Tom Westley was also taken by Dowrich after flashing loosely outside the off stump, having been given a let-off when he should have been run out.
Stoneman was struck on the left hand by a sharp delivery from Holder just after tea, but looked accomplished and reached his half-century with a seventh boundary down to fine leg
England's plight worsened when Gabriel cleaned Stoneman up before Kyle Hope spilled Root in the gully on 10, the skipper also breathing a sigh of relief when an lbw decision was overturned.
Root had 35 to his name when he was struck on the pads by his opposite number Holder, but the ball was missing leg stump, and Dawid Malan was also unbeaten on 21 at the close after the pair put on 77 to edge England in front.