Sangakkara hit a sparkling 86 but it was Mathews’ fine, if not flawless, captain’s knock of 51 not out that helped the hosts overwhelm the 266-run victory target with two balls to spare at Colombo’s R Premadasa Stadium.
James Taylor’s career-best 90 and Eoin Morgan’s belligerent 62 had powered England to 265 all out in 50 overs, nine of the wickets claimed by spinners.
Sri Lanka looked in trouble at 69 for two but Sangakkara and Mahela Jayawardene, who have played over 800 ODIs between them, added 96 runs for the third wicket to put the chase back on track.
Jayawardene dragged a Chris Jordan delivery onto his stumps to depart, while Sangakkara perished chasing a wide delivery from the same bowler.
England maintained the pressure and were nearly rewarded but Alex Hales spilled a Mathews catch in the 46th over from an exasperated Jordan.
Despite conceding 20 extra runs including 12 wide balls, the visiting bowlers showed enough fight to take the game to the last over but Mathews hit Steven Finn for a boundary to bring up his 50 and seal victory.
Pallekele hosts the fifth match on Wednesday.
Earlier, regular England captain Alastair Cook’s suspension, due to a slow over-rate offence, handed Taylor an opportunity and the 24-year-old grabbed it.
Opting to bat first, England wobbled early as Hales fell for a golden duck and the in-form Moeen Ali (19) was sent back by Tillakaratne Dilshan (3-64).
The 93-run partnership between Taylor and Joe Root (36) steadied the innings before left-arm spinner Rangana Herath (3-36) dismissed Root.
Taylor, who completed his maiden ODI fifty in 69 balls with the help of two fours and as many sixes, developed cramps and became one of the three victims of spinner Ajantha Mendis.
At 170 for three in the 35th over, England looked set for a huge total but the Sri Lankan spinners, who bowled the final 21 overs of the innings, showed considerable discipline to restrict the visitors. (Reuters)