Stuart Broad sparkled again, taking five wickets after Paul Collingwood and Kevin Pietersen struck half centuries as England set Pakistan 274 for victory.
Collingwood also contributed with the ball with his three wickets helping dismiss for Pakistan for just 206.
Pakistan, who opted to rest Abdul Razzaq and Shahid Afridi, elected to field and once again England captain Andrew Strauss fell cheaply, this time to the pace of Shoaib Akhtar.
Jonathan Trott was also dismissed in single figures however Pietersen looked solid alongside Bell.
Pietersen raced to his half century before Bell eventually departed for 39 which brought the out-of-form Collingwood to the crease.
But the Durham man appeared to find his touch, playing his way towards his half century despite the loss of Pietersen for 66.
Ravi Bopara offered good support to Collingwood with a quick-fire 35 before Matt Prior contributed with a late 24 before the tail folded with Wahab Riaz claiming three wickets.
Just as he did against Canada, Broad tore through the Pakistan top order with only Younis Khan offering any resistance.
The middle order all got starts but failed to kick on with CollingwoodÃ¢â‚¬â„¢s change of pace stalling a fightback.
Broad retuned to remove Khan for 80 and with his exit went PakistanÃ¢â‚¬â„¢s chance of victory, falling 67 runs short.
Collingwood admitted it was a relief to be back among the runs following his first 50 in any form of cricket for three months after the victory.
“On a personal note, it was nice to get some runs,” he afterwards. “It’s been quite a frustrating few months for me, not being able to contribute as much as I would have liked.
“Even though it was a warm-up game, I thought it was important I spent some time in the middle and tried to get that confidence going again – and thankfully, it worked out well.”
England now begin the preparations for their group opener against the Netherlands on Tuesday.
MORE: The latest football news
MORE: The latest tennis news
BIOGRAPHY: Marcus Rashford