In an emotion-filled morning, which included a one-minute silence following the death of Pakistan coach Bob Woolmer on Sunday and then a guard of honour send-off for departing skipper Inzamam-ul-Haq, Nazir dominated.
Pakistan were playing for pride having already been eliminated following defeats to West Indies and Ireland.
Nazir's career-best, made off 121 deliveries, included 14 boundaries and a joint World Cup record eight sixes. Only Australia captain Ricky Ponting has scored as many at a World Cup, in the 2003 final.
Nazir was the mainstay of Pakistan's innings by a long way as the next highest scorer was Inzamam with 37, his final innings in a one-day international and as captain. Inzamam left the field in tears.
Zimbabwe, though, required a win to maintain hopes of a Super Eights place. That looked to be unlikely as they required about seven runs an over.
Nazir was fortunate to survive when he was on 31 after Gary Brent trapped him on the crease and television replays suggested he should have been lbw.
He also skied Brent to deep backward square leg when on 81 but Friday Kasteni dropped a straightforward catch and Nazir picked up a single. But he deserved his luck with some exhilarating stroke play.
When past three figures, Nazir crashed left-arm spinner Sean Williams for six over midwicket and then showed enough composure to dab the next ball to the vacant third man boundary for four.
Nazir's previous highest score was 105 not out, his only other one-day century, also made against Zimbabwe. Pakistan's total was also the eighth-highest in a World Cup match.
Inzy bids tearful farewell: Inzamam-ul-Haq broke down in tears after he was dismissed for 37. Inzy, who is playing in his final one-day international, sobbed as he made his way off the Sabina Park pitch.
He was congratulated by the entire Zimbabwe team who all rushed over to shake his hand while his own teammates formed a guard of honour to see him back into the pavilion.
The 37-year-old Inzamam raised his bat to the sparse crowd, removed his cap and tearfully acknowledged the warm applause after he was caught at long-on by Sean Williams off seamer Tawanda Mupariwa in the 28th over of the Group D match.
Inzamam had been attempting to launch another huge six having already smashed three over the ropes.
He finishes his 378-match one-day career with 11,739 runs, which includes 10 centuries and 83 fifties, at an average of just under 40 runs.
Pakistan 349 all out in 49.5 overs ( Nazir 160, Inzamam 37, Iftikhar Anjum 32, Younis 28; Chigumbura 3 for 50, Gary Brent 3 for 68, Williams 1 for 45) Vs Zimbabwe (yet to bat).