Pakistan finish penultimate day on 80-2, still 263 behind their target
Having taken a 78-run lead in the runfest, England declared their second innings on 264-7 to set Pakistan an improbable victory target of 343 with four sessions to go.
On a docile pitch where seven batsmen smashed hundreds, England's pace attack bent their backs and diligently pursued a short-ball strategy to dent Pakistan's top order.
The home side finished the penultimate day on 80-2, still 263 behind their target, with number three batsman Azhar Ali unlikely to bat again after retiring hurt with a damaged finger.
Opener Imam-ul-Haq (43) and debutant Saud Shakeel (24) were resisting England's victory march when bad light stopped play.
England's Joe Root surprised all by batting left-handed against leg spinner Zahid Mahmood for a couple of deliveries before returning to his usual stance.
"In the dressing-room we've got strong aggressive leaders who are willing to risk things, dangle a carrot and in the bigger picture of things make things really exciting," England assistant coach Paul Collingwood told Sky Sports.
"Chasing down targets on the last day isn't easy and the scoreboard pressure is always looking over your shoulder."
"We're not scared of losing test matches. We've had a great day and we'll keep pushing."
Earlier, Pakistan were bowled out for 579 in reply to England's first-innings 657.
Agha Salman's breezy 53 frustrated England who had to toil for about 75 minutes to claim the last three Pakistan wickets.
Off-spinner Will Jacks claimed 6-161 in his debut test on a flat track where the spinners also had to toil for success.
England were rattled early in their second innings with Naseem Shah in the thick of things.
Naseem dismissed Ben Duckett, one of four century-makers in England's first innings, for a first-ball duck with the second delivery of the innings.
The fast bowler spilled a return catch from Zak Crawley, then on 18, but took a neat catch at deep backward square when Mohammad Ali bounced out Ollie Pope for 15.
Crawley followed his first-innings hundred with 50.
Root made 73 before Zahid struck twice in the same over, also accounting for England skipper Ben Stokes who fell for a three-ball duck.
Harry Brook, who top-scored for England with 153 in the first innings, hammered 87 off 65 balls before Naseem bowled him through the gate and Stokes declared immediately.
Stokes, an enforcer with the ball, combined with Ollie Robinson to dent Pakistan's top order.
Robinson removed Abdullah Shafique for six and, two balls later, forced Azhar to retire hurt.
Stokes sent groans across the stadium in the next over with a bouncer, which Pakistan captain Babar Azam, who made four, could only tickle through to wicketkeeper Pope.