Mohammed Hafeez's side ran up 177 for six with Nasir Jamshed claiming four sixes in a confident 56, with New Zealand responding valiantly to post 164 for 9, but the Black Caps were unable to emulate the swashbuckling batting of their opponents.
Despite the loss, New Zealand qualify for the Super Eights on net run rate, while Pakistan will confirm their own progression with victory over Bangladesh on Tuesday.
Pakistan opted to bat first and soon began to rack up the runs. It was not until the sixth over that Tim Southee caught and bowled Imran Nazir for 25 but Pakistan continued to score freely. After Hafeez hit an 87-metre six in the ninth over, Pakistan reached the halfway stage at 92 for one and Jamshed brought up his 50 with a four and a single in the 13th over.
New Zealand took three wickets in three overs, Hafeez (43) first to go in the 14th over having been clean bowled by James Franklin. Kamran Akmal slashed Jacob Oram's delivery to Kyle Mills for just three runs and Brendon McCullum caught Jamshed off Daniel Vettori's bowling soon after.
Umar Akmal went for a big six in the 19th over but the ball dropped before crossing the boundary and Brendon McCullum made the catch. Kane Williamson repeated the trick as Shahid Afridi went long with the final ball of the innings, with Pakistan closing on 177 for six.
New Zealand made an impressive start, with Rob Nicol and Williamson bringing up 47 in six overs, before Afridi clean bowled the former in the seventh. Williamson followed swiftly, run out for 15 by Hafeez, and by the end of the 10th over, the Black Caps had been restricted to just 66 for two.
New Zealand needed 86 from the last six overs and Brendon McCullum soon hit a huge six after Daniel Vettori survived a stumping. But Vettori fell in the next over as he directed Ajmal's ball to Jamshed for 18. Brendon McCullum edged Umar Gul's delivery against his pads and subsequently onto the stumps to go for 34 from 31 balls and Oram followed as he missed a big sweep at an Ajmal ball.
Ajmal dropped an ambitious effort from Franklin before Ross Taylor stepped up to fire a six over cow corner. Franklin went down swinging as he edged a slower Sohail Tanvir ball to Jamshed in the deep, with Taylor soon run out for 26 off 11 balls on review.
New Zealand needed 19 runs from the last six balls but Gul caught Southee for one, Nathan McCullum fell to Ajmal for just five, with Kyle Mills and Adam Milne not able to score as Pakistan claimed victory.