Chasing a score of 237, Bangladesh fell short by two runs.
Bangladesh looked set for a win after the openers got the team off to a steady start with a partnership of 68 runs.
But against the run of flow, Pakistan slightly managed to claw back into the match with two quick wickets of Nazimuddin and Jahurul Islam.
Opener Tamim Iqbal continued to take the attack to the opposition with the some lusty blows. Nasir Hossain ably supported the left-hander as Pakistan made their way into the match.
Pakistan skipper brought in Umar Gul back, who was expensive in his earlier spell, and the move worked immediately as the pacer accounted for Tammim (60).
New batsman Shakib ul-Hasan and Hossain then came together to stitch a 89-run partnership for Bangladesh.
Just when it seemed the duo will take Bangladesh home, Gul struck again to send back Hossain.
Shakib departed immediately within a space of nine runs to leave the hosts in a lurch.
The visitors win looked inevitable but Mashrafe Mortaza and Mahmudullah had some other plans has they went after the Pakistan bowlers.
Mortaza smashed three boundaries off Gul’s over to help Bangladesh inch closer the target.
But Mortaza was dismissed the very next over by Saeed Ajmal as Bangladesh slipped to 218 for seven.
Bangladesh, needing nine of the final over managed six runs to finishe runners-up. (Agencies)
Brief Scores: Pakistan 236 for 9 in 50 overs (Sarfraz Nawaz 46*, Mohammad Hafeez 40, Shahid Afridi 32, Umar Akmal 30; Abdur Razzak 2 for 26, Shakib Al Hasan 2 for 39) vs Bangladesh 234 for 8 in 50 overs (Shakib Al Hasan 68, Tamim Iqbal 60, Nasir Hossain 28; Aizaz Cheema 3 for 46, Saeed Ajmal 2 for 40, Aizaz Cheema ) by 2 runs