The left-handed batting combination of Morgan and Ben Stokes, who made 35, put on an unbeaten 73-run stand for the fourth wicket to blunt the Sri Lankan bowling attack.
Left-arm spinner Amila Aponso took two early wickets including Joe Root for eight to dent England’s chase but opener Jason Roy ensured the runs kept coming quickly from one end. He made 41 off 26 balls.
Earlier, put in to bat after nearly six hours of play was lost due to rain, the hosts were off to a breezy start courtesy of a 20-ball 36 from Niroshan Dickwella.
Rashid helped England bounce back with wickets at crucial junctures as he claimed four from his five overs of leg-spin.
The left-handed Dickwella put on 57 runs off 33 deliveries with opener partner Sadeera Samarawickrama, who also made a brisk 35.
Fast bowler Curran got Dickwella caught at mid-off to check Sri Lanka’s surge. Curran returned figures of 3-17 from his four overs.
Rashid hit Sri Lanka hard with the wickets of Samarawickrama and Thisara Perera for nought in consecutive deliveries to be on a hat-trick.
Skipper Dinesh Chandimal played out the hat-trick ball and stayed on to make 34 crucial runs before falling to Curran in the final over.
Sri Lanka now need to win the remaining two matches to at least draw level the series. The fourth ODI is scheduled in Kandy on Saturday.