Phillips counterattacked after a collapse and carried New Zealand over the line with 11 balls to spare. They rounded off their tour with a 2-1 victory, their first ODI series win on the subcontinent in 15 years.
Kohli, 34, smashed an unbeaten 166 to lead India to the biggest-ever ODI win by 317 runs against Sri Lanka on Sunday, his 46th ODI ton and 74th in all formats.
India looked to be coasting to victory with New Zealand in deep trouble at 131-6 while chasing 350 after opener Gill made just the 10th double hundred in ODI history.
The victory, giving holders England valuable practice on spinning, low-bounce South Asian pitches before the 50-over World Cup in India later this year, meant that the visitors took the series 2-0 with one match still to play.
Trusting his defence on a slow wicket, Malan scored 114 not out with eight fours and four sixes to steer England to 212-7 with eight balls to spare after Bangladesh was bowled out for 209 in 47.2 overs.