The Tigers had set New Zealand a target of 212 after openers Mahela Jayawardene and Tillakaratne Dilshan put on 91 for the first wicket.
James Neesham (42) and Nathan McCullum (35) led a spirited revival for New Zealand after the top order had crumbled but with light fading the umpires called time on the match in the 25th over.
The Black Caps, led by McCullum, complained vociferously but their disappointing score of 126 for six meant their 29-year wait for a bilateral series win in Sri Lanka continues.
The match was scheduled to be a 50-over contest but the weather played its part as it has all series with rain delaying the start and the players being brought off midway through the innings.
The first over was a maiden but Sri Lanka's veteran opening duo soon found their stride before Jayawardene was dismissed in the 15th over for 46.
McCullum was brought into the attack and did the trick with just his second ball as Jayawardene attempted a paddle sweep and the ball looped up tamely for Luke Ronchi.
And just two balls later Kumar Sangakkara was gone for a duck as he attempted to pull and missed completely with the ball shaving off stump.
Dilshan brought up his fifty in the next over but it was not long before he was also gone as Ronchi took another catch behind the stumps.
Mitchell McClenaghan got one to move away and found the outside edge to send Dilshan back for 53 off 50 balls.
Captain Angelo Mathews was next in but he was gone first ball in almost identical fashion and Sri Lanka had slipped from 91 without loss to 110 for four.
The rain returned in the 22nd over and when the players came back out Lahiru Thirimanne was next to fall as he lobbed Kyle Mills to Tom Latham for 23.
Dinesh Chandimal fell in the next over, lbw to Neesham for 15, and Thisara Perera soon followed as he found Latham off an Andrew Ellis delivery.
Neesham had a second wicket in the penultimate over as Mills caught Nuwan Kulasekara but 18 off the final over pushed the hosts past 200.
Anton Devcich, Latham, Grant Elliott, Colin Munro and Rob Nicol were all out by the 11th over of New Zealand's chase - Rangana Herath taking three wickets and Sachithra Senanayake two - for only 26 runs between them.
Ronchi, Neesham and McCullum had it all to do and the former made 23 from 29 balls before becoming Herath's fourth victim.
Neesham and McCullum's fifty partnership included eight boundaries and featured a huge six. Stared down by Dilshan, the Black Caps captain slammed his length ball away over cow corner with a belligerent slog sweep.
McCullum soon lead the New Zealand protest, however, as play was finally curtailed in the 25th over.
Senanayake's late cameo with the ball had proved crucial and he told espncricinfo.com at the post-match presentation: "Its my first experience winning the man of the match.
"We're playing a game here after three years and I've enjoyed myself a lot.
"I've played a lots of domestic matches and with so many experience players, talking to me, it worked out.
"The wicket turned a bit which we didn't expect at the start of the game and we did well to use that."
- Sports & Recreation
- Mahela Jayawardene
- Tillakaratne Dilshan
- Nathan McCullum
- Sri Lanka
- New Zealand