Ross Taylor starred in his 100th Twenty20 global at Bay Oval but couldn't stop another defeat.
For New Zealand, Kane Williamson didn't recover on time and Tim Southee led the side once again.
"I don't think it's a massive gap - I know the series scoreline suggests that, but I think with the games being reasonably close it's just doing those small things a little better".
With the likely return of Kane Williamson, the hosts' middle order could expect some solidity, and with Colin Munro and Tim Siefert putting up half-centuries in the previous match, the batting is beginning to look good.
The match seemed to have tipped in New Zealand's favor when it took 34 runs from the 10th over, bowled by Shivam Dube.
Sanju Samson caught the ball diving beyond the rope and then flicking it under his legs to save India four runs.
New Zealand's pursuit began in nearly comically bad fashion.
Virat Kohli urged New Zealand to keep Kane Williamson as captain after India swept their T20 global series on Sunday. It felt like a definitive momentum shift in favour of the hosts.
However, the temporary captain had to retire hurt after pulling up lame when completing a single at the start of the 17th over.
By the start of the last over New Zealand had been reduced to nine for 143 and although Ish Sodhi belted two sixes India retained control. KL Rahul was dismissed by Hamish Bennett before he could get to his half century. Despite Virat Kohli rested and Rohit Sharma out of the field with an injury, the Men in Blue performed brilliantly under KL Rahul to defend 163.
New Zealand had looked on track to get a consolation win with senior batsman Ross Taylor, celebrating his 100th Twenty20 worldwide, leading the chase to reel in India's 163/3. Jasprit Bumrah was the star for India and picked up three wickets while giving away just 12 runs.