Left-handed Nafees scored a brisk 67 and Hossain a cautious 54 as Bangladesh surpassed Zimbabwe's total of 217-7 with 7.2 overs to spare for a 2-0 lead in the five-match series on Sunday.
The duo's scores overshadowed a fine performance from Zimbabwean Sean Williams, who made a solid 61 for his maiden half-century, held a superb diving catch and took one wicket.
Nafees, who had struck three successive centuries against Zimbabwe before this day-night game, put his team on course for an emphatic victory with a 104- run stand for the opening wicket with Hossain.
He cracked 10 fours in his 68-ball knock before being brilliantly caught at backward point by Williams off Elton Chigumbura. Williams then held a catch from his own bowling to account for Aftab Ahmed.
The 19-year-old Hossain, playing his third one-dayer, hit four boundaries in his 111-ball knock for his maiden half-century.
Middle-order batsman Williams earlier hit one six and four boundaries to prop up the innings after his team had lost three wickets for 70 runs.
The 20-year-old, playing only his sixth match, put on 76 for the fourth wicket with Hamilton Mazakadza, who struck one six and three fours in his 41.
Chamu Chibhabha (31) and opener Stuart Matsikenyeri (25) were the other notable contributors.
Left-arm spinners Mohammad Rafique and Saqibul Hasan, and fast bowler Mashrafe Mortaza grabbed two wickets apiece for Bangladesh, who had elected to field after winning the toss.