The 28-year-old smashed a 57-ball 104 in a rearguard action to lift New Zealand from a precarious 73-4 to chase down a stiff target of 194 with four balls to spare.
The final match of the series marks Pakistan skipper Babar Azam's 100th ODI in a glorious career which began in 2015.
Babar Azam's 107 off 117 balls propped up Pakistan's 334-6, and New Zealand stumbled to 232 all out, its lowest total of the series.
The 28-year-old crosses his milestone in just 97 innings, and breaks S.Africa Hashim Amla's record of 101 innings. Babar also becomes 14th Pakistani to score 5,000 runs in ODI cricket, with ex-captain Inzamam at the top of the list with 11,701 runs.
Pakistan, who won the first two matches by five and seven wickets respectively in Rawalpindi, took an unassailable 3-0 lead in the five-match series.
Zaman lifted Pakistan from 21-2 during a third-wicket stand of 154 off 161 balls with Mohammad Rizwan, who made a polished 74-ball 77 with six boundaries.
Naseem snapped up 5-57 as New Zealand was made to bat first and was restricted to 255-9. Rizwan, who was rested for the preceding drawn two-test series, top scored with an unbeaten 77 off 86 balls and eased Pakistan to 258-4 in 48.1 overs.
New Zealand's spinners strangled Pakistan on a turning wicket to win the second ODI by 79 runs Wednesday and level the three-match series 1-1.
"When I entered into the 90s I got nervous for 1-2 overs, but Sarfaraz told me don’t take tension,” Shakeel said after raising his maiden Test hundred in his hometown and hitting 17 fours.
Pakistan named three uncapped players — batters Tayyab Tahir and Kamran Ghulam and wrist spinner Usama Mir — in their 16-man squad and recalled Haris Sohail, Shan Masood for the upcoming three home ODI series against New Zealand.