India lost Murali Vijay (12) and Cheteshwar Pujara (2) in the space of eight balls in the final session and part-timer Joe Root then claimed the wicket of Shikhar Dhawan (37), which broke a watchful stand of 51 with Virat Kohli.
Spinner Moeen Ali got Kohli (28) to edge a straight one to Jos Buttler before Lord’s centurion Ajinkya Rahane (18 not out) and Rohit Sharma (six not out) battled to the close with India on the brink of defeat.
Earlier in the day England captain Alastair Cook (70 not out) managed successive half-centuries in a test match for the first time since 2011 and he was backed up by Root’s 56 off 41 balls as England declared their second innings at 205-4.
It left India facing what would be a world-record chase of 445 to win the game. But England, trailing 1-0 in the five-match series, are favourites to earn their first victory in 11 outings on the final day on Thursday.
“I think as days of cricket go you want to have more like that one,” Root told reporters.
“To get the two wickets in the morning was fantastic and we wanted to have a good session at them tonight.
“We’re in a really good position and if we can get the six wickets tomorrow we’ll be right back in the series. We’re hungry for a win as it has been so long.”
The day finished with a verbal exchange between James Anderson and Rahane at the close of play, with umpire Rod Tucker stepping in.
Anderson, who faces a disciplinary hearing on Friday following his altercation with Ravindra Jadeja at the first test at Trent Bridge, took the first two wickets of the morning to claim a five-for on his 32nd birthday.
He dismissed Mahendra Singh Dhoni and Mohammed Shami in the morning session to bowl India out for 330, but Cook opted not to enforce the follow-on.
Having lost Sam Robson (13) and Gary Ballance (38) before lunch and Ian Bell (23) after the interval, Cook and Root went about setting India a daunting target.
The pair attacked India with brutal power, taking the bowlers to all parts of the ground with a range of aggressive strokes, before Root was bowled by Ravindra Jadeja, prompting Cook into a declaration.
A resurgent England came at India with venom after tea, and they found a breakthrough when Broad ran Murali Vijay out with a superb diving direct hit.
In the following over, Cook introduced Ali into the attack and it paid dividends as he struck with his second ball of his spell, getting Pujara to edge a sharp delivery that was brilliantly caught at slip by Chris Jordan.
On a dry pitch conducive to spin bowling, Cook made another well-timed bowling change, bringing Root into the attack. Soon Root had drawn Dhawan into nicking the ball to Jordan before Kohli feathered a straight ball from Ali to Buttler.
“It’s not easy to bat out there and you can’t predict what is going to happen,” Dhawan said.
“When you get out on a good ball you can’t do much about it. It’s going to be hard to save the match but we’ll be looking to build a good partnership tomorrow.” (Reuters)