The comprehensive win was sealed late in the second session on the final day when Nathan Lyon was lbw to Rangana Herath and, with it, Australia lost their number 1 Test ranking.
Angelo Mathews and his team celebrated the historic clean sweep in the middle of the Sinhalese Sports Club ground, the three comfortable victories coming after Sri Lanka had only beaten Australia once in 33 years before this tour.
Set 324 on Wednesday for an unlikely win in 83 overs, Australia slumped in all-too-familiar fashion to be all out for 160.
It was another woeful batting display, the tourists again failing to cope with the home-side’s spinners and were skittled in just 44.1 overs.
The wearing pitch took plenty of turn and was difficult to bat on, but it did not justify another collapse of 5-23 in 39 balls not long after lunch when they were motoring along at 1-77.
Herath snared 7-64 to finish as top wicket-taker for the series with 28, a gutsy display from the 38-year-old after retiring hurt on day two when he was hit in the groin by a Josh Hazlewood delivery.
His match figures of 13-145 were also the best by a Sri Lankan in Tests against Australia, bettering Muttiah Muralitharan’s 2004 feat of 11-212 in Galle.
Dilruwan Perera contributed with 2-71, his dismissal of David Warner — who was bowled around his legs without playing a shot — summing up Australia’s mental state to the hosts’ clever slow bowlers.
Four Aussies hit double figures
Herath and Perera opened the bowling and offspinner Dhananjaya de Silva, who accounted for four overs, was the only other bowler required.
Warner top-scored for Australia with 68 from 94 balls, but Shaun Marsh (23), Mitchell Starc (19) and Lyon (12) were the only others to get into double figures.
Australia needed to produce a record-breaking sub-continental run chase to win after Mathews declared early on Wednesday at 8-347 in their second innings.
The only time Australia had successfully chased 200 or more in Asia was against Bangladesh in 2006 when they made 7-307 in the first Test in Fatullah.
The loss was also Australia’s ninth straight defeat in Asia following a 2-0 loss to Pakistan in 2014 in the UAE and 4-0 hammering in 2013 at the hands of India.