The left-handed opener, who had left the field on 83 due to cramp, returned in the closing overs to score an 87-ball 109 for his 24th hundred in one-day internationals.
Jayasuriya struck seven sixes and as many fours in an engrossing display of aggressive batting, reaching his century with a six off left-arm spinner Abdur Razzak.
The 37-year-old Jayasuriya had already put his team on course for a big total before he had retired hurt, dominating the Bangladeshi seamers and spinners with attractive strokes on both sides of the wicket.
Skipper Mahela Jayawardene, wicket-keeper Kumar Sangakkara and Chamara Silva continued the good work to ensure Bangladesh chased a stiff target in their second Group-B match, which was interrupted for 30 minutes due to rain.
Sangakkara smashed a 55-ball 56 and Silva cracked a 48-ball 52 not out for their second successive half-centuries, while Jayawardene hit 46.
Bangladesh, who had bowled and fielded superbly against India on the way to a shock five-wicket win, failed to repeat their performance against Sri Lanka as they dropped three catches and missed a few run-out chances.
They elected to field after winning the toss, hoping to exploit early moisture on the pitch, but the move failed as Jayasuriya went for big shots early in his innings.
Jayasuriya hit two sixes off seamer Syed Rasel to set the trend and went on to add 98 for the opening wicket with left-handed Upul Tharanga (26).
Tharanga survived a run-out chance early in his knock before falling to a brilliant catch at point off left-arm spinner Mohammad Rafique, fielder Aftab Ahmed holding the ball on the second attempt.
But there was no respite for Bangladesh as Jayasuriya continued to dominate the attack, hoisting Razzak for two sixes in an over before racing to his half-century off 43 balls.
The Sri Lankan captain eventually fell playing a big shot, caught by Ahmed in the deep off left-arm spinner Saqibul Hasan. The stage was set for the late onslaught, with 90 runs coming in the final 10 overs.
Both the teams had won their opening matches, with Sri Lanka thrashing debutants Bermuda by 243 runs and Bangladesh whipping India.
India thrashed Bermuda by a record 257 runs for their only win in two games. They now need to win their last match against Sri Lanka here on Friday to boost hopes of qualifying for the next round.
Sri Lanka 318 for 4 in 50 overs ( Jayasuriya 109, Sangakkara 56, Chamara Silva 52 n o, Jayawardene 46, Tharanga 26; Mohd Rafique 1 for 48, Saqibul Hasan 1 for 49, Syed Rasel 1 for 58) Vs Bangladesh (yet to bat).