In a must-win game, Bangladesh managed to display another poor outing with the bat as they scored only 136 on a pitch which had little assist to provide to the bowlers and Pakistan chased it down easily with nine wickets and 20 balls in hand as none of the Bangladeshi bowlers could put up a splendid performance to dismantle the hosts.
This defeat means Bangladesh have lost the series and will play the final match on January 27 to avoid a clean sweep.
Winning his second consecutive toss, Bangladesh skipper Mahmudullah Riyad decided to have a bat first for the second match in a row. Tamim Iqbal scored 65 but took 43 deliveries to reach his fifty and no other batsmen could either score big or fast as Bangladesh ended up 136-6.
Chasing 137, Pakistan were once again dealt with an early blow as Shafiul Islam struck in the second over to send Ahsan Ali back for a duck. The Pakistani batsman's attempted hoick only managed to go upwards and skipper Mahmudullah took an easy catch.
Pakistan skipper Babar Azam and veteran Mohammad Hafeez steadied their ship and started building their innings as they brought up their fifty partnership off 41 deliveries. Both the batsmen went on to pick up their fifties as Hafeez took 39 deliveries with Babar picking it off 35 balls.
Liton Das had an opportunity to send back Hafeez in the 14th over off Mustafizur Rahman but the wicket-keeper managed to spill the opportunity as the two batsmen brought up their 100-run stand.
Hafeez and Babar cruised on their way as they reached the target of 137 with nine wickets and 20 balls in hand.
Earlier, Bangladesh were immediately pushed to the backfoot as Naim Sheikh was sent back for a golden duck in the second over by Shaheen Shah Afridi.
Mohammad Hasnain was the next to strike as Mahedi top-edged a short ball in the fifth over to find the keeper and go back.
Liton Das, playing at no. 4, did not last long either as he was trapped LBW in the 8th over by Shadab Khan. Liton reviewed immediately but replays showed that the ball was clipping the stumps and the wicketkeeper-batsman had to go back.
Tamim Iqbal and Afif Hossain put up a stand for the Tigers but could never get out of their blocks before Afif Hossain was sent back by Hasnain for 21 in the 15th over as the 45-run stand was broken.
Tamim went to pick up his fifty off 43 deliveries and started to play some shots before he was run out for a second time in the series in the 18th over for 65 as Imad Wasim hit the stumps directly to send back the well-set batsman.
Mahmudullah was the next to go in the last over but a couple of boundaries from Aminul Islam took them to 136-6.