Bell, recalled in the absence of injured No 3 Kevin Pietersen, faced 101 balls with six fours as England, chasing 251 to win, finished on 251 for four with 29 balls to spare.
Defeat left Bangladesh still searching for their first win against England, who have now beaten the Tigers in 20 matches all told, a sequence comprising eight Test victories and 12 one-day international successes.
SCORE BOARD
Bangladesh
Tamim lbw Broad 28
Imrul c Morgan b Anderson 14
Junaid lbw Yardy 51
Raqibul (run out) 76
Shakib c Anderson b Broad 20
Mushfiqur c Wright b Bresnan 22
Mahmudullah lbw Anderson 4
Hossain (not out) 8
Mortaza c Bell b Anderson 5
Razzak b Bresnan 3
Extras (B-1, B-7, W-11) 19
Total (for 9 wkts, 50 overs) 250
Fall of wickets: 1-40, 2-70, 3-136, 4-186, 5-222, 6-234, 7-236, 8-243, 9-250.
Bowling: Anderson 10-0-74-3, Bresnan 10-0-40-2, Broad 10-1-43-2, Tredwell 3-0-18-0, Wright 3-0-20-0, Collingwood 9-1-32-0, Yardy 5-0-15-1.
England
Strauss (run out) 50
Kieswetter c Faisal b Shakib 32
Bell (not out) 84
Collingwood c Siddique b Shakib 33
Morgan c Shafiul b Razzak 23
Yardy (not out) 10
Extras (B-5, LB-4, W-10) 19
Total (for 4 wkts, 45.1 overs) 251
Fall of wickets: 1-75, 2-93, 3-173, 4-213.
Bowling: Mortaza 6-0-30-0, Shafiul 5-0-46-0, Razzak 10-0-64-1, Shakib 10-0-35-2, Mahmudullah 8-0-41-0; Faisal 6.1-0-26-0.
Deccan Herald is on WhatsApp Channels| Join now for Breaking News & Editor's Picks