Chasing a victory target of 259 runs, Lankan captain Avishka Gunawardene (94) and Jayan Kaushal Silva (79) put on 116 runs for the second wicket to put the islanders in a commanding position.
The Lankans were all set to romp home easily with the scoreboard reading 228 for two in the 43rd over. However, the fall for Silva triggered a middle-order collapse and the Lankans lost six wickets in a space of 30 runs with the danger of an upset looming large. However, Kulatunga hit the winning runs to save islanders the blushes.
For the hosts, medium pacer Arshad Ali (three for 35) and left-arm spinner Khurram Khan (two for 42) almost pulled off the upset of the tournament.
Earlier, Khurram Khan struck a magnificent 108 not out helping the hosts put on a respectable 258 from a precarious 78 for four.
The southpaw got a partner in Fahad Usman (51) as the duo put on 117 for the fifth wicket.