Ali scored a career-best 102 off 104 balls as Pakistan reached their target of 269 for victory with 16 balls to spare, taking a 2-0 lead in the three-game series marking the return of international cricket to the country.
Ali featured in two half-century stands, adding 85 runs with Asad Shafiq (39) and a further 56 with Haris Sohail, who remained unbeaten on 52.
His sole escape came on 53 when he was dropped off the bowling of Graeme Cremer, who fared best of the Zimbabwe bowling attack with figures of 2-52.
Zimbabwe’s total of 268-7 was anchored by Pakistan born batsman Sikandar Raza, who belted eight fours and three sixes in a fine innings of 100 off only 84 balls.
He took control in the second half of their innings after Chamu Chibhabha agonisingly fell one run short of a century, the opener being dismissed by Shoaib Malik after a 100-ball stay at the crease.
Wahab Riaz claimed 2-55 for Pakistan and there were also two wickets for Yasir Shah.
Zimbabwe would have fancied their chances when Chibhabha dismissed Sarfraz Ahmed (22) and Cremer accounted for Mohammad Hafeez (15) but Pakistan built three strong stands afterwards to ease to victory.
Ali eventually perished off the bowling of Tawanda Mupariwa but Sohail and Shoaib (36no) scored quickly in their 60-run stand, the latter hitting four fours and a six in his exciting 20-ball innings.