Chasing 203 runs from their allocation of 50 overs, West Indies struck gold with 13 balls to spare when captain Brian Lara lofted Elton Chigumbura over wide long-on for a six.
The victory gave West Indies their second straight win in the competition, following their 54-run triumph over Pakistan in the World Cup opener last Tuesday at the same venue.
The win puts West Indies in the lead of Group D with four points, one more than giant-killers Ireland, and three ahead of Zimbabwe, leaving Pakistan at the bottom of the table with no points.
West Indies and Ireland complete the group phase on Friday, two days after the Pakistanis and Zimbabweans contest their final match on Wednesday.
Lara, unbeaten on 44, and Dwayne Bravo, not out on 37, shared 75, unbroken, for the fifth wicket to take West Indies over the line.
The World Cup hosts had wobbled to 129 for four, after openers Chris Gayle and Shivnarine Chanderpaul had put on 73.
Both Chanderpaul and Gayle were caught at slip off Chigumbura and Christopher Mpofu respectively within four balls of each other.
Anthony Ireland held a return catch to remove Ramnaresh Sarwan for 12 in the 25th over, and Tawanda Mupariwa had Marlon Samuels caught at backward point for 28 in the 33rd over to send a few jitters through the West Indies' dressing room, but Lara and Bravo made it safe.
Earlier, Zimbabwe, sent in to bat on a hard, true Sabina Park pitch under partly cloudy skies, were indebted to half-centuries from Sean Williams and Brendon Taylor, as well as a late cameo from Chugumbura for getting them to a respectable total.
Left-hander Williams hit an undefeated top score of 70 from 88 balls and Taylor gathered 50 from 121 balls in a vital stand of 83 for the fifth wicket to lead a Zimbabwe recovery.
When Taylor backed up too far and was run out by Bravo's throw from point to bowler Samuels in the 41st over, Chigumbura arrived and gave the Zimbabweans a late boost.
He collected five fours in the closing overs to gather 30 not out from 29 balls and share an unbroken stand of 60 with Williams.
West Indies had early success, when new ball bowlers Jerome Taylor and Daren Powell bowled both Zimbabweans openers Friday Kasteni and Vusimuzi Sibanda inside the first three overs.
Taylor added the wicket of Justice Chibhabha also bowled for 12 in the 10th over before Dwayne Smith had Stuart Matsikenyeri caught at mid-on for 16.