Dambulla, Sri Lanka - Seamer Thisara Perera claimed four for 34 as Sri Lanka bowled Pakistan out for 102 in the third and decisive one-day international in Dambulla on Saturday.
Fawad Alam top-scored with an unbeaten 38, but eight batsmen failed to reach double figures as Pakistan crumbled in 32.1 overs in a match that will decide the 1-1 series deadlock.
It was Pakistan's lowest one-day total on Sri Lankan soil, falling below the 116 they made against New Zealand at the same venue in 2003.
An hour-long rain interruption after Pakistan slumped to 81-8 in the 26th over forced the umpires to reduce the game to 48-overs-a-side.
Pakistan, electing to bat after winning the toss, never recovered after losing opener Sharjeel Khan in the third over, caught at second slip off Dhammika Prasad.
Prasad, who replaced the off-form Nuwan Kulasekara, then had the other opener, Ahmed Shehzad, caught at mid-on to make it 14-2.
The third wicket fell at the same total when Lasith Malinga had Mohammad Hafeez leg-before for one as the TV umpire upheld the decision following a review by the batsman.
It soon became 55-5 by the 19th over when skipper Misbah-ul Haq was run out for 18 by a direct throw from Tillakaratne Dilshan and Umar Akmal holed out off Perera for seven.
Pakistan lost the next three wickets in the space of 11 deliveries, including the important one of big-hitter Shahid Afridi who skied a catch to the point fence off Seekkuge Prasanna.
Pakistan's chances of a dramatic win rest on their spin spearhead Saeed Ajmal, who was back after missing the previous two matches to have his bowling action tested in Australia.
Ajmal flew to Brisbane after his action was reported by the umpires during the preceding Test series, which Sri Lanka won 2-0. He is allowed to play on till the results of the tests are made known.
Ajmal replaced left-arm seamer Junaid Khan in the team.
Pakistan won the first match in Hambantota by four wickets, before Sri Lanka drew level with a 77-run win in the second game at the same venue.