Set just 136 to win, the tourists scored slowly and lost wickets to be in trouble at 60-4 after the last ball of the 20th over.
Captain Hashmatullah Shahidi (38) and Mohammad Nabi (34 not out) then patiently turned the tide, steadily adding the runs that eventually delivered a four-wicket victory with 74 balls to spare.
There you have it, 🇦🇫 have won by four wickets to register a 3-0 series whitewash!Next is the 3-match T20I contes… https://t.co/npNfgdPDsH
— Zimbabwe Cricket (@ZimCricketv) 1654783684000
Put in to bat by the tourists, Zimbabwe had their own problems with only Sikandar Raza (38) and Ryan Burl (21) making any impact, and they were all out for 135 in 44.5 overs.
After previous victories by 60 runs and eight wickets at Harare Sports Club, Afghanistan overtook England for second place in the World Cup Super League standings. They trail Bangladesh by 20 points having played six matches less.
The top eight Super League finishers qualify for the 2023 World Cup in India while the other five nations in the table must go into a 10-team tournament from which only two secure finals places.
Afghanistan have won 10 of 12 Super League matches while a much higher-profile team like South Africa lie 11th having been victorious in only four of 13 ODIs.
Zimbabwe batted poorly with the team managing just eight fours between them while the lone six came from lower-order batsman Milton Shumba.
Only Raza and Burl could make meaningful contributions against a six-man Afghan attack, all of whom claimed at least one wicket.
Rashid Khan was the most successful Afghan bowler with three wickets while Nabi and Fazalhaq Farooqi captured two each.
The cheap exits of openers Rahmanullah Gurbaz (7) and Ibrahim Zadran (8), Rahmat Shah (17) and Najibullah Zadran (9) had Zimbabwe dreaming of a shock victory.
But Shahidi and Nabi dug in with the skipper striking five fours in a 38 compiled from 70 deliveries while Nabi scored faster with his 34 coming off 47 balls, and including two fours and a six.
Blessing Muzarabani (2-18) and Tendai Chatara (2-32) shared the Zimbabwe bowling honours with two wickets apiece.
Afghanistan now turn their attention to Twenty20 internationals, playing Zimbabwe in Harare on June 11, 12 and 14.