The home team was comfortably placed at 139 for one, thanks to the second wicket stand from opener Danushka Gunathilaka (74) and Lahiru Thirimanne (59) before collapsing to 187 all out.
The match situation changed drastically after Thirimanne's fall in the 38th over with the next nine batsmen adding 48 to the total in the innings lasting 55.5 overs.
All eight bowlers in the Indian squad had a go with chinaman Kuldeep (4/14 in 6.5 overs) and Jadeja (3/31 in 9 overs) standing out.
KL Rahul, returning to competitive cricket after a three month injury lay-off, made a fine 54 off 58 balls including seven fours.
More From This Section
Virat Kohli too got to spend some time in the middle. He scored 34 off 46 balls and shared an unbeaten 43-run stand with Ajinkya Rahane (30 unbeaten off 30).
Though Pujara stuck around for sometime, it was an opportunity lost for Mukund, who is competing for the opening slot with Dhawan.
Both Pujara and Mukund were bowled by left-arm pacer Vishwa Fernando.
Mohammed Shami worked up good pace upfront to take a couple of wickets in five overs.
The pacers, who were tidy but went wicketless, were Ishant Sharma, Umesh Yadav, Bhuvneshwar Kumar and Hardik Pandya.
Notably, India's premier spinner Ravichandran Ashwin went wicketless in 10 overs while Kuldeep and Jadeja troubled the batsmen.
Kuldeep has been impressive ever since he made his Test debut against Australia in March before making an impact in the limited-overs series in the West Indies.
Brief scores: Sri Lanka Board President's XI 187 all out in 55.5 overs (Gunathilaka 74, Thirimanne 59; Kuldeep 4/14).
India 135/3 in 30 overs (Rahul 54, Kohli 34 batting; Fernando 2/21).