Zimbabwe opened up a 175-run lead over Bangladesh with six second wickets remaining, but they were left to rue a late collapse in the final overs at the Harare Sports Club.
After dismissing the tourists for 287 -- and a first innings lead of 83 -- Zimbabwe were 69 without loss before Bangladesh captured four quick wickets for the addition of just 23 more runs.
Openers Tinotenda Mawoyo (35) and Vusi Sibanda (38) looked in good form before Sibanda, who made 78 in the first innings, fell to a catch at midwicket by substitute fielder Nasir Hossain off Rubel Hossain.
Ten runs later, Mawoyo was clean-bowled by Robiul Islam.
First innings centurion Hamilton Mazakadza then offered a feeble shot to Bangladesh skipper Shakib Al Hassan and was caught and bowled for five while night watchman Ray Price was leg before to Abdur Razzak, making only four runs.
Captain Brendan Taylor (five) and former skipper Tatenda Taibu (0) were the not out batsmen.
At the start of the day, Bangladesh resumed on 107 for three in their first innings with Mohammad Ashraful moving on from his overnight 34 to 73 with captain Shakib Al Hassan top-scoring with 68.
Test debutant Brian Vitori, a left-armer with some pace and aggression, led the Zimbabwe attack well and he took four wickets for 66. Veteran spinner Ray Price also had some success with two for only 34.
Zimbabwe first innings 370
Bangladesh first innings
T Iqbal c Taylor b Vitori 15
Imrul Kayes c Price b Vitori 4
S Nafeez b Price 50
M Ashraful c Taibu b Chigumbura 73
Mahmudullah c Mawoyo b Vitori 13
S Al Hassan c Taibu b Mpofu 68
M Rahim c Mpofu b Vitori 27
A Razzak lbw b Mpofu 11
S Islam b Jarvis 5
R Hossain not out 16
R Islam lbw b Price 0
Extras (b-1, nb-4) 5
Total (all out in 96.2 overs) 287
Fall of wickets: 1-13, 2-36, 3-102, 4-136, 5-190, 6-246, 7-258, 8-267, 9-275, 10-287.
Bowling: Jarvis 16-1-67-1; Vitori 24-5-66-4; Mpofu 23-5-72-2; Chigumbura 19-4-47-1; Price 14.2-4-34-2
Zimbabwe 2nd innings
T Mawoyo b Robiul Islam 35
V Sibanda c sub b Rubel Hossain 38
H Masakadza c and b Shakib Al Hasan 5
B Taylor not out 5
R Price lbw b Abdur Razzak 4
T Taibu not out 0
Extras (lb-1, w-3, nb-1) 5
Total (For 4 wickets in 34.3 overs) 92
Fall of wickets: 1-69, 2-79, 3-83, 4-92
Bowling: Shafiul Islam 5-2-6-0, Robiul Islam 9-1-26-1, Abdur Razzak 5-0-22-1, Rubel Hossain 7-1-25-1, Mahmudullah 2-1-3-0, Shakib Al Hasan 6.3-3-9-1.