Sri Lanka is facing an uphill battle to save the third and final test at the Rose Bowl after slumping to 112-3 by the close of day four, still 81 runs adrift of dominant England on Sunday.
A stylish 119 not out by the prolific Ian Bell helped England to a first-innings lead of 193 before captain Andrew Strauss declared just before tea on 377-8, giving his bowling unit a little over four sessions to dismiss the tourists and clinch a 2-0 series victory.
After openers Tharanga Paranavitana (10) and Lahiru Thirimanne (38) were dismissed, Stuart Broad took the key wicket of Mahela Jayawardene (6), leaving interim captain Kumar Sangakkara (44 not out) and nightwatchman Rangana Herath (2 not out) to steer the Sri Lankans to stumps.
A forecast of inclement weather could be the biggest obstacle for England going into the final day of a rain-disrupted test. Even if Strauss' side don't complete the victory in Southampton, a fifth straight series win is virtually secured.
Underpinned by Bell's 14th test hundred and a third in his last five test innings, England added 182 runs to the overnight total of 195-4 before a positive declaration gave the team's bowlers an ideal platform to attack the Sri Lankans.
"I feel like I'm batting as well as I can at the minute," Bell said. "It's nice to contribute to us getting in winning positions. I've started to put in performances when the team have needed them most and doing it more consistently, which is what you want to do as a batsman."
After meeting some early resistance, two breakthroughs in the final hour left the hosts in an even more convincing position.
"We probably deserved five wickets rather than the three we got because of how well we bowled," Bell said. "If we do the same tomorrow, we will get our rewards. Hopefully 30-40 overs may be enough."
Broad's sole success in the first innings was the wicket of tailender Chanaka Welegedara and he has struggled for scalps this series. But he built up a head of steam in the second innings, raw pace and bounce helping to rough up his adversaries before enticing a nick behind from Jayawardene to wicketkeeper Matt Prior for a crucial wicket. Broad had figures of 1-22 off 11 overs.
The Sri Lankans made painstaking progress, scoring at little more than two runs an over, while their conservatism was dovetailed with some aggressive deliveries that pinned them back.
Paranavitana, who was dropped by Prior with the score at 14-0, fell 11 runs later when he was caught low down by Swann at second slip off the bowling of James Anderson.
Thirimanne and Sangakkara, who both made centuries at Essex in warmup match at Chelmsford last week, added 61 runs between them before the former - who was rapped on the hand by a lifter from Broad - edge high to Strauss at first slip, giving Tremlett a deserved wicket.
Interim Sri Lanka coach Stuart Law said Sangakkara, who has his highest score of a miserable series, has a key role on Monday.
"I think he batted with extreme purpose and looked every bit the world-class player he is," Law said of Sangakkara, who is filling in as captain for the injured Tillakaratne Dilshan. "We need some runs from the middle and late order, but Sanga really is the one to watch tomorrow."
Earlier, Bell and Morgan dealt dismissively with some lacklustre bowling from Sri Lanka's pace attack, a 137-run stand for the sixth wicket ending any slim chance the tourists had of winning the test.
Bell, enjoying the form of his life and dismissed only once this series, collected 12 boundaries through a series of caressed drives and late cuts that are starting to become his trademark. His shot of the day was an exquisite push through extra cover for four to bring up England's 250.
This series, Bell has struck an unbeaten 103 in England's first-test victory in Cardiff and followed that up with 52 and 57 not out in the draw at Lord's. The Warwickshire batsman has made at least 50 in each of his last five test matches.
"He's a pain in the backside, to be honest with you," Law said.
As England gradually stepped up the run rate in a push for victory, the shots became more agricultural and Morgan perished selflessly when he advanced down the pitch going after Lakmal, only succeeding in gifting wicketkeeper Prasanna Jayawardene a fourth catch of the innings.
Prior, to his second ball, and Broad both fell for ducks as England lost three wickets for 12 runs, prompting the declaration from Strauss 35 minutes before tea.
Anderson had been the first to depart in Sri Lanka's only wicket of the morning session, the nightwatchman making a brisk 27 off 33 balls before nicking Welegedara behind.
Right-arm paceman Lakmal had team-best bowling figures for Sri Lanka of 3-99.