Determined to make amends after being humbled in the opening fixture, New Zealand made 192 for six after being sent into bat then bowled out the tourists for 137.
McCullum led from the front with a captain's knock of 74, including five sixes and six fours, as the Black Caps made the most of the short Seddon Park boundaries to punish the England attack.
The hosts also produced a much improved display in the field to have England reeling at 47 for five at one point before a feisty 54 from Jos Buttler and a 22-run cameo by James Tredwell helped to make the scoreline respectable.
"Credit to New Zealand, they played fantastically and took the game away from us with the bat," England captain Stuart Broad said.
"We didn't execute our skills 100 percent right. At the half-way point we thought we were in with a chance but obviously losing early wickets like we did meant we were always chasing the game."
New Zealand openers Martin Guptill (47) and Hamish Rutherford (40) provided a solid platform for McCullum to blast away late in the innings in a display that included three sixes off a Stuart Broad over.
Between them the three scored 10 sixes as New Zealand reached its fourth highest T20 total.
New Zealand's momentum appeared to have slowed significantly when Ross Taylor (4), Colin Munro (7) and Grant Elliott (4) were dismissed cheaply, until McCullum unleashed a big-hitting onslaught against Broad.
He brought up his half century in style, sending Broad's delivery over the boundary for six, then followed up with another in the next ball.
He was at it again two balls later, thumping the ball over extra cover to take his third six of the over.
He fell in the penultimate ball of the innings, although James Franklin still managed a four off the final delivery.
Jade Dernbach was the pick of the England bowlers, taking three wickets for 38 runs.
But England made a disastrous start to their innings when Mitchell McClenaghan clean bowled Alex Hales for five in the second over then dismissed Luke Wright, one of the heroes of the Auckland win, for a golden duck with his next ball.
Jonny Bairstow followed three overs later, tentatively dabbing an Ian Butler short ball to McClenaghan to leave the tourists at 24 for three.
Michael Lumb tried to lift the over rate but was bowled for 17 after charging down the wicket at a Nathan McCullum delivery, with dangerman Eoin Morgan falling to Butler in the next over for 13.
Trent Boult turned the screws by running out Samit Patel in spectacular fashion, firing the ball directly into the stumps from the mid-off boundary.
A forgettable night for Broad, who leaked 53 runs from four overs with the ball, ended when he was caught for one after facing just three deliveries.
Buttler and Tredwell showed glimpses of what England's batting line-up is capable of late in the innings but by then too many wickets had fallen and any chance of victory had long since evaporated.
The final match of the series will be played in Wellington on Friday.