England, set a record 319 to win - their best second innings victory chase had been the 306 for five, needing 305, they achieved against Pakistan at Karachi in 2000/01 - were bowled out for 273 as they went down to a twelfth defeat in 16 One-day internationals.
Together with Sri Lanka captain Mahela Jayawardene (66), Jayasuriya put on 160 for the second-wicket as the visitors built on their 20-run series-opening victory at Lord's on Saturday.
And Jayasuriya then cemented his man-of-the-match status by bowling England top scorers Kevin Pietersen (73) and Paul Collingwood (55), taking three for 51 in all with his left-arm spin as Sri Lanka won with 20 balls to spare.
England, who conceded a record 42 extras at Lord's, gave away 33 this time around, including 21 wides as opposed to their 23 at the weekend.
Stephen Harmison led the attack well with three for 31 from 10 overs but fellow quick Sajid Mahmood saw his seven overs cost 80 runs - three runs shy of Derek Pringle's record of 83 for the most conceded by an England bowler in a One-day international
Sri Lanka's score was their best against England in a One-day international, surpassing the 303 for nine they made at Adelaide in 1999.
Hopes England had of chasing down the 320 they required suffered blows when openers Marcus Trescothick (nine) and stand-in captain Andrew Strauss (18) both fell cheaply to leave them 48 for two in the 10th over.
Just as at Lord's, England - admittedly still without six injured senior players including regular captain Michael Vaughan and pace bowling all-rounder Andrew Flintoff - were paying the price for wayward bowling, too many extras and losing early wickets.
Pietersen drove Ruchira Perera over long-on for six but on 28 he sustained an injury, inside edging the ball onto his knee.
Ian Bell (40) provided sound support in a stand of 68 in 61 balls before he fell to a catch by Muttiah Muralitharan, running round from mid-wicket, off Lasith Malinga.
Pietersen carried on to a 48-ball fifty with one six and eight fours before, trying to sweep Jayasuriya, he was bowled to end a stand of 60 with all-rounder Paul Collingwood, who himself went on to complete a 55-ball fifty.
However all-rounder Collingwood was bowled advancing down the pitch to Jayasuriya and, with 10 overs left, England needed 98 to win with four wickets standing.
Earlier Upul Tharanga, man-of-the-match at Lord's with 120, edged Harmison to first slip Trescothick for 17.
But Jayawardene, who had won the toss, got off the mark with a whipped legside six off Mahmood.
Jayasuriya, 37 later this month, continued to take a toll of Mahmood, picking him up for six over deep square leg.
England though then had a lucky break when a mix-up saw Jayawardene, who faced 62 balls with one six and five fours, run out.
Jayasuriya though pressed on to a 122-ball century with two sixes and 11 fours. But, going for a trademark uppercut over the infield, he was caught by Tim Bresnan, running in from cover, off Harmison.
The series continues at the Riverside on Saturday.
Fall of wickets: 1-34, 2-194, 3-259, 4-283, 5-298
6-298, 7-304, 8-317
Did not bat: R Perera
Fall of wickets: 1-10, 2-48, 3-116, 4-176, 5-222, 6-238
7-253, 8-258, 9-263, 10-273
Toss: Sri Lanka
Result: Sri Lanka won by 46 runs
Man of the Match: Sanath Jayasuriya (SRI)
Series: Sri Lanka lead five-match NatWest Series 2-0
Umpires: Darrell Hair (AUS), Ian Gould (ENG), TV umpire: Peter Hartley (ENG)
Match referee: Clive Lloyd (WIS)
June 17, Lord's: Sri Lanka beat England by 20 runs
June 24: Riverside
June 28: Old Trafford
July 01: Headingley