Sabbir scored a gritty 30-ball 43 to take Bangladesh to a modest 163 for 7 before bagging three wickets to help the hosts to a 2-0 lead in the four-match series.
The Tigers built on a strong base laid by openers Soumya Sarkar (43 off 33) and Tamim Iqbal (23) in a 45-run opening stand at the Sheikh Abu Naser Stadium in Khulna on Sunday.
After the openers departed, Sabbir shared two prolific partnerships with Musfiqur Rahim (24 retired hurt) and Shakib Al Hasan (27 off 17 balls).
In at three, he put on 52 with Mushfiq, who went off the field with a foot injury, before cracking a quickfire 39 with Shakib in a late assault.
After their century stand in the previous match, Zimbabwe openers Hamilton Masakadza and Vusi Sibanda scored 50 runs at a brisk pace.
Sibanda and Masakadza, who was dropped twice on 24 off Mashrafe Bin Mortaza, hammered 13 runs in Shakib’s first over that included a six and a four.
But once the openers perished, Zimbabwe’s batting order collapsed yet again. They were in a tight spot on 68 for 4 in the 11th over.
The Africans lost four wickets for just 18 runs as Sabbir picked up two in successive overs.
Malcolm Waller (29) kept pushing but perished to Al-Amin Hossain for six. Mustafizur Rahman then struck twice in an over before Zimbabwe limped to 125 for 8.
Bangladesh: 167/3 in 20 overs (Tamim 23, Soumya 43, Sabbir 43*, Mahmudullah 1, Mushfiq 24, Shakib 27*; Cremer 1/29, Shingirai 1/32, Muzarabani 1/35)
Zimbabwe: 125/8 in 20 overs (Sibanda 21, Hamilton 30, Mutumbami 7, Williams 7, Waller 29, Moore 9, Madziva 0, Cremer 8, Shingirai 6*; Sabbir 3/11, Mustafizur 2/19, Shuvagata 1/18, Al-Amin 1/21, Mashrafe 1/25)
Man of the Match: Sabbir Rahman