After winning the toss and choosing to bowl, it took England some time to find the breakthrough as the partnership between Tamim Iqbal and Imrul Kayes produced 80 runs.
It was a positive display with the ball from Rashid as he nabbed four wickets in total, while Moeen Ali and Stokes took one apiece.
Mushfiqur Rahim was the only Bangladesh player to surpass 50 runs as he ended the innings unbeaten on 67, with one six and four boundaries.
Ben Duckett impressed for England as he scored his second half-century in three ODIs, eventually ending the innings with a knock of 63.
England needed 78 from 78 balls to win the series, and despite losing Jos Buttler (25) and Ali (1) in the closing stages, the tourists got over the line.
Stokes hit two sixes and one four to end the innings unbeaten on 47 runs, while Chris Woakes, who survived a drop catch, sealed the victory with a six.
The result marks the first time that Bangladesh have lost a bilateral ODI on home turf since June 2014.