The tourists - dismissed for a meagre 201 in their first innings - were 137 for three at the close, needing a further 243 runs to reach their target of 380 after Pietersen had scored 134.
Opener Dinesh Karthik was 56 not out and former captain Sourav Ganguly, dropped on 12, was 36 not out with their stand currently worth 52 after they came together at 84 for three.
If India win they would achieve the fourth highest fourth innings Test victory total in history and break the equivalent Lord's record of 344 for one set by the West Indies in 1984.
But forecast bad weather for Monday's final day risked denying both sides the chance to go 1-0 up in this three-match series.
James Anderson, leading an attack missing injured quicks Matthew Hoggard, Stephen Harmison and Andrew Flintoff, added to his Test-best five for 42 in the first innings when he had opener Wasim Jaffer, who'd top scored in the first innings with 58, clipping to Pietersen at mid-wicket.
Debutant pace bowler Chris Tremlett then had India captain Rahul Dravid lbw for nine.
Dravid's exit brought in star batsman Sachin Tendulkar.
But in what could be the 34-year-old's final Test innings at Lord's he only managed 16 before he was lbw to left-arm spinner Monty Panesar.
Tendulkar's departure sparked wild celebrations from Panesar, who'd got him out for his first Test wicket at Nagpur in March last year, with the bowler running round in an arc towards the Tavern boundary.
Ganguly then gave a tough chance when he pushed forward against Panesar with a diving Ian Bell at silly-point dropping the left-handed catch.
Karthik, who played some attractive cover-drives against the new ball, became becalmed later on and spent 16 overs in the 40s.
But he kept going to complete a 101-ball fifty with seven fours.
Pietersen provided the cornerstone of England's second innings 282 which ended when 21-year-old left-arm quick Rudra Pratap Singh took five wickets in a Test innings for the first time to finish with five for 59 in 16.3 overs.
Fellow left-arm seamer Zaheer Khan took four for 79.
Singh's haul was all the more impressive as this was his first Test outside the sub-continent and only fifth in all.
Pietersen and Matt Prior put on 119 for the sixth-wicket before the wicket-keeper was out for 42.
England, having been rocked by Singh's pre-lunch burst of three for 10 in 15 balls, resumed on 161 for five with Pietersen 62 not out.
Pietersen then took the attack to India's bowlers and went from 80 to his hundred in 10 balls.
Two superb shots off Anil Kumble took him to 99. First he forced the veteran leg-spinner off the backfoot for four through extra-cover and next ball went down the pitch to drive him for a straight six.
Two balls later Pietersen had his century when he clipped Kumble through mid-wicket and diving fast bowler Shanthakumaram Sreesanth made a mess of trying to prevent the four on the boundary rope.
The South Africa-born batsman's ninth hundred in his 28 Tests, his third at Lord's, came off 148 balls with one six and 12 fours in three-and-a-half hours.
But just when it seemed the game was utterly beyond India's reach, Khan struck twice in two balls.
Prior was well caught by diving keeper Mahendra Singh Dhoni and Tremlett played on as he became the fifth England player to make a pair on Test debut.
Ryan Sidebottom survived the hat-trick before he was caught by Dravid, at slip, off Kumble.
Pietersen was bowled by Singh looking to hit out before the left-armer ended the innings by having Panesar lbw.