He added one more run with a stroke to deep square leg before the innings closed when 10th-wicket partner Ebadot Hossain was trapped leg before by Muzarabani for a duck.
Mahmudullah reached his century off the third ball of the 100th over as he cut to deep point for four a ball bowled short of a length by Roy Kaia.
Mahmudullah and Taskin Ahmed, who made 75 before being bowled by Milton Shumba, put on 191 runs for the ninth wicket.
Taskin struck 11 fours off 134 balls as Bangladesh sought a second victory in five Tests this year under captain Mominul Haque.
On Wednesday, Mominul stabilised a creaking innings with a 70, then Liton Das fired a career-best Test score of 95.
Muzarabani returned the best bowling figures for Zimbabwe, but his four wickets came at a heavy price as he conceded 94 runs in 29 overs.
Apart from the Test, Bangladesh will play three one-day and three Twenty20 internationals during a 21-day first tour to the southern Africa nation since 2013.