The hosts closed on 85 for two in their second innings at The Oval, needing a further 76 to win.
Captain Rory Burns fell for 40 but Ryan Patel was 22 not out.
Essex were earlier bowled out for 208 in their second innings with Dan Worrall finishing with five for 66 to record career-best match figures of 11 for 122.
Second-placed Hampshire were in a commanding position after forcing Gloucestershire to follow on at Cheltenham.
Gloucestershire were sent in again after being bowled out for 201 in response to the visitors’ 457 despite an unbeaten 58 from captain Graeme Van Buuren and 59 from Ollie Price. Liam Dawson took four for 44.
They then closed on 191 for four in their second innings, still trailing by 65, but at least with Miles Hammond offering resistance on an unbeaten 109.
— Lancashire Cricket (@lancscricket) July 21, 2022
Josh Bohannan was hoping to steer third-placed Lancashire to victory after the Red Rose fought back against Northamptonshire at Wantage Road.
Lancashire, who conceded a first-innings deficit of 103, bowled out the home side for 174 second time around with Will Williams taking five for 41 and Tom Bailey four for 65.
That left them chasing a target of 278 and they were 192 for five by the close with Bohannan 92no.
Somerset were in a strong position against Yorkshire at Taunton as they closed on 225 for six in their second innings, leading by 373. George Bartlett was 88no after Tom Lammonby weighed in with 46.
Yorkshire earlier lost their final four wickets for just nine runs as they were bowled out for 276 in reply to Somerset’s first-innings 424. Tom Kohler-Cadmore hit 100 from 201 balls but Jonathan Tattersall (43) was the only player to offer significant support.
— Warwickshire CCC 🏏 (@WarwickshireCCC) July 21, 2022
Warwickshire need another 297 runs to beat Kent at Edgbaston with eight wickets remaining.
Kent set a target of 325 after declaring on 384 for nine in their second innings. Joe Denly hit 141 from 269 deliveries and Jordan Cox added 79.
Warwickshire were 28 for two at the close.
Division Two leaders Nottinghamshire will need to take 10 wickets on Friday to beat Derbyshire by an innings at Derby.
Derbyshire conceded a huge first-innings deficit of 300 as they were bowled out for 318 despite a defiant 109 from Brooke Guest, who put on 140 for the third wicket with Wayne Madsen (74).
The hosts were 79 without loss in their second innings at stumps.
— Middlesex Cricket (@Middlesex_CCC) July 21, 2022
Second-placed Middlesex fared well in their battle to save the game against Sussex at Lord’s thanks to a century from John Simpson.
Replying to the visitors’ mammoth first-innings 523, Middlesex were bowled out for 485 after 109 from wicketkeeper Simpson. Toby Roland-Jones added 85 after Sam Robson earlier hit 62 and Pieter Malan 64.
Bradley Currie took six for 93 Sussex, who are yet to begin their second innings.
Leicestershire were in firm control against Glamorgan after the second day at Grace Road.
Wiaan Mulder (156) added just nine to his overnight score and Harry Swindells (52) did not increase his tally but Ben Mike (91) and Roman Walker (64) added 115 together to help Leicestershire to 584 in their first innings.
Glamorgan were 111 for two in reply with Colin Ingram and Sam Northeast both unbeaten on 46 and 50 respectively.