Goals from Akashdeep Singh (10th min), Gurwinder Singh Chandi (14th), VR Raghunath (25th) and Danish Mujtaba (65th) gave India their second win in successive days.
On Saturday, India had defeated England 3-1 in their opening game. New Zealand took the initial lead in the third minute when India conceded a self-goal, which has been introduced into world-level hockey after the Olympic Games.
The second goal for New Zealand was scored in the 37th minute by Nicholas Wilson. India will next take on Germany on Tuesday after a rest day on Monday.
Hockey powerhouses Australia and the Netherlands played out a scoreless draw to keep open the fight for top spot in Pool B.
In the day's other matches, England created history by defeating Germany for the first time at the eight-nation tournament 4-1, while Pakistan looked impressive in downing Belgium 2-0.