Guptill thundered 97 off 50 balls, including eight sixes and six fours, before being caught off Daniel Sams' bowling to miss out on a third career T20 international century as the Black Caps posted a bumper 219-7.
Captain Kane Williamson's 13th T20 half-century was subdued by comparison, hitting three sixes on his way to 53 runs from 35 balls, while James Neesham crashed six maximums to finish unbeaten on 45 from 16 balls.
The hosts' 18 sixes at University Oval tied their all-time record in a T20 international and proved a shade too much for Australia to chase down, as Mitchell Santner claimed 4-31 to rip through the middle order.
Josh Philippe (45 off 32) had steadied the ship, before Marcus Stoinis and Sams came together at 113-6 and picked up the pace in the last seven overs to give New Zealand a major scare.
Stoinis recorded his first T20 half century as Australia closed on an unlikely victory, needing 36 off the final three overs, and 15 off the last, but Neesham's full toss saw Sams caught for 41 to end a thrilling partnership of 92 runs off 37 balls.
Neesham tempted Stoinis into a big shot, which ended his innings for 78, and the tourists came up short on 215-8 as New Zealand sealed a 2-0 lead in the five-match series, going into the third T20 in Wellington on March 3.
The hosts came out swinging from the off, with Guptill posting 17 runs in the opening three overs, but the Black Caps were temporarily slowed when Kane Richardson claimed Tim Seifert (3) with his first ball.
But Guptill blazed through the rest of the power play, thumping a pair of sixes off Adam Zampa's bowling, before bringing up his half century from 27 balls and taking the score to 59-1 off seven overs.
Australia controlled the run rate over the next few overs until Williamson opened up with a maximum off Ashton Agar as New Zealand made it to 85-1 at the halfway point of the innings.
Guptill slammed back-to-back sixes off Stoinis to take his team past 100, and made it four maximums in the space of five balls as a Kane Richardson over was crunched for 21 to bring up the 100 partnership.
Williamson brought up his 50 for 32 balls and Guptill fell three runs short of 100, with Stoinis taking the catch in the deep, before Neesham teed off with three straight sixes.
The tourists gave themselves a chance with Jhye Richardson and Kane Richardson conceding only 10 runs combined off the 18th and 19th, but their hopes of chasing 220 suffered a blow when Matthew Wade (24) fell to Tim Southee (1-47) to leave them at 34-1.
After Aaron Finch lost his wicket to Ish Sodhi for 12, Santner took control, removing Glenn Maxwell (3) and claiming three more wickets in a single over – including Philippe – to leave Australia needing 107 with seven overs remaining.
But the mood turned quickly as Stoinis and Sams' electric partnership created a tense finish before the pair were both caught off Neesham's bowling to leave the New Zealanders breathing a sigh of relief.
Hafeez was recalled for the upcoming three-match T20 series against Bangladesh on Thursday.
The 39-year-old revealed a day later that he will end his long international career after gracing one last major tournament in Australia, if selected.
"It has been a privilege," Hafeez told media.
"I want to play the T20 World Cup and then exit from Pakistan's international team."
Hafeez ended his Test career in December 2018 after playing 55 times in the longest format, having scored 3,652 runs - including 10 centuries - and taken 53 wickets.
The veteran has appeared in 218 ODIs, making 6,614 runs and claiming 139 scalps, and has played 89 times in the shortest format - picking up 54 wickets and amassing 1,908 runs.
Hafeez has been banned from bowling in international cricket on three occasions due to an illegal action.
He added: "I have played 17 years for Pakistan and tried my level best. At times I missed my bowling."
The T20 World Cup commences on October 18.
Hardik will lead India when they begin their tour of New Zealand with the first of three T20Is in Wellington on November 18 – just five days after the T20 World Cup in Australia ends.
One week later, they begin a three-match one-day series at Eden Park in Auckland, in which Dhawan – who led India on a tour of the West Indies earlier this year – will take the captaincy.
Rohit, Kohli and Rahul will all miss the trip to New Zealand, but as many as eight other players currently in Australia for the World Cup will be in attendance.
Hardik, Rishabh Pant, Deepak Hooda, Suryakumar Yadav, Yuzvendra Chahal, Harshal Patel, Bhuvneshwar Kumar and Arshdeep Singh have all been selected for the T20I series, with Pant named vice-captain for the entire tour.
There was no place in either squad for Jasprit Bumrah or Ravindra Jadeja, however, after the duo were forced to miss the World Cup through injury.
Harrison has spent over seven years as ECB CEO, but his resignation was confirmed on Tuesday.
Clare Connor, managing director of England women's cricket, will step in as interim chief until a permanent successor to Harrison is appointed.
The ECB board will start a comprehensive search for a new CEO, while the governing body is already seeking a new chairman after Ian Watmore quit last year.
Harrison said: "It has been a huge honour to be CEO of the ECB for the past seven years. Cricket is an extraordinary force for good in the world and my goal has been to make the game bigger and ensure more people and more communities in England and Wales feel they have a place in this sport.
"The long-term health of cricket depends on its ability to grow and remain relevant and be more inclusive in an ever-changing world.
"The past two years have been incredibly challenging, but we have pulled together to get through the pandemic, overcome cricket's biggest financial crisis, and committed to tackling discrimination and continuing the journey towards becoming the inclusive, welcoming sport we strive to be.
"I have put everything into this role, but I believe now is the right time to bring in fresh energy to continue this work."
Harrison had come under fire for the ECB's handling of the Yorkshire Cricket Club racism scandal and following England's 4-0 Ashes hammering in Australia.
There have been a number of significant chances at the top of English cricket recently, with Rob Key appointed as managing director of England men's cricket, Ben Stokes named Test captain and Brendon McCullum the new Test head coach.
Matthew Mott, head coach of the Australia women's cricket team, is reportedly set to be named as England's limited-overs head coach.
The hosts needed to win to keep their hopes of a series triumph alive after going down to Heinrich Klaasen's career-best 81 in Sunday's four-wicket defeat.
And superb bowling displays from Harshal (4-25) and Chahal (3-20) meant they did exactly that after Ruturaj Gaikwad (57) and Ishan Kishan (54) hit half-centuries for the hosts, who scored 179-5.
The tourists produced a disappointing performance with the bat as they toiled to 71-5 and ultimately fell well short of their much-improved hosts, eventually bowled out for 131 in the final over.
Having been put in to bat by South Africa, Gaikwad and Ishan wasted little time in establishing a strong platform for the hosts, the former becoming the first dismissal of the contest in the 10th over, by which point India had 97 on the board.
While Dwaine Pretorius (2-29) eventually claimed the wickets of both Ishan and skipper Rishabh Pant (6) to keep the Proteas in contention, their hopes of wrapping up the series early were quickly shattered when they took up the bat.
The dismissal of skipper Temba Bavuma for just 8 set the tone for a dismal South African display, with Reeza Hendricks (23), Rassie van der Dussen (1), Pretorius (20) and David Miller (3) all following in a miserable start.
With India in full control, Chahal and Harshal ran riot, the latter claiming his fourth wicket when dismissing Tabraiz Shamsi for a golden duck with the final ball of the contest as the dominant hosts kept the series alive.
Dominant duo run riot
Having struggled to make headway against South Africa in the first two contests of the series, the Indian attack was back to its best in this potentially decisive third clash.
Harshal set the tone by sending Bavuma and Hendricks tumbling early before finishing with four, while Chahal stepped up to claim his own treble, ensuring there was to be no repeat of Klaasen's heroics by dismissing him for 29.
Home openers on form
Gaikwad and Ishan's gave India a superb platform to build from, with the former recovering from his poor start to the series – in which he had previously scored just 24 runs across two innings – as the pair each hit crucial half-centuries.
Afridi was ruled out after sustaining a knee ligament injury during the first Test against Sri Lanka last month.
The left-arm paceman's absence has presented Hasnain with an opportunity to join up with the squad for a tournament that starts in the United Arab Emirates on Saturday.
Hasnain has been playing for the Oval Invincibles in The Hundred, but will cut short that spell to report for international duty.
The 22-year-old quick has feature in 18 Twenty20 Internationals, taking 17 wickets at an average of 30.70.
Pakistan face fierce rivals India in their first Asia Cup match in Dubai on Sunday.
Despite losing Quinton de Kock for a duck in the first over of the decider in Southampton on Sunday, the Proteas posted an imposing 191-5 as Reeza Hendricks and Aiden Markram thrived with the bat.
After a 55-run stand with Rilee Rossouw, who fired 31 off 18 balls, Hendricks (70) and Markram (51 not out) combined for a key 87-run third-wicket partnership.
Markram had support late in the innings from captain David Miller - who hit 22 off just nine balls - and the pair at one point combining for five fours in the space of six deliveries.
Miller struck South Africa's sole six and Tristan Stubbs hit two fours in the final over to push South Africa beyond 190, which England never threatened to reach after Jos Buttler (14) and Jason Roy (17) had both departed during the powerplay.
Tabraiz Shamsi (5-24) was the star of the show as the spinner ensured the wickets continue to tumble around Jonny Bairstow, who was the last man to fall on 27 when he slog-swept Keshav Maharaj to deep midwicket.
Buttler still waiting for series win
England's new white-ball skipper Buttler remains without a win from his first four series since taking the job, this defeat following a drawn ODI series with South Africa and 2-1 losses to India in both limited-overs formats. The manner of Sunday's defeat suggests he and his side have a long way to go if they are to contend at the T20 World Cup this year.
Shamsi puts England in a spin
Shamsi's five-for was the first of his T20I career. Both of his previous four-wicket hauls in the format came last year against Ireland and Pakistan. The Proteas have now won four of their past five T20I series, continuing their fine form in England after a 2-2 draw with India earlier in the year.
Sri Lanka, who were inserted by the tourists, were restricted to 155-6 and Dasun Shanaka (31 not out) was their only batsman to score more than 23.
The home team needed something special from their talisman Lasith Malinga with the ball, but the captain's three overs cost 46 runs as King (43) set the tone with back-to-back sixes in the powerplay.
Hetmyer (43 not out) shared a 46-run partnership with King and then put on an unbroken 55 alongside Russell, who smashed six maximums to bring about the end in a hurry.
Sri Lanka lost the first T20 by 25 runs and this Windies victory, achieved with 18 balls to spare, gave them a 2-0 triumph in the best-of-two-match series.
Oshane Thomas was the star of that opening T20 and he claimed his sixth wicket of the series when bowling Avishka Fernando.
Fabian Allen accounted for opener Kusal Perera, who had made 66 in the first meeting, and Shehan Jayasuriya to return figures of 2-24 from his four overs.
Sri Lanka needed early wickets and though Lendl Simmons was bowled by Angelo Mathews, King had made 43 from 21 before he was dismissed.
Some quick thinking from Jayasuriya in the deep saw Rovman Powell removed, the fielder throwing the ball up in the air and catching it again after rolling back off the rope and onto the field.
Yet Hetmyer and Russell could not be stopped, the latter pulling a shorter ball from Mathews over the fence to seal victory.
Hetmyer arrived at the crease at 44-2 in the sixth over but blasted four sixes on his way to 61 from 36 deliveries.
Australia captain Aaron Finch had won the toss and elected to field, but the West Indies amassed 196-4 buoyed by Hetmyer's knock, piling on 123 runs in the latter 10 overs.
Hetmyer had excellent support from Dwayne Bravo (47* from 34) and Andre Russell (24* from eight), feasting on a wayward Mitchell Starc (49-0 from four overs).
The tourists struggled again with the bat, losing openers Matthew Wade (duck) and Finch (six) cheaply, before being bowled out for 140.
Mitch Marsh, elevated to first drop, top scored with 54 from 42 balls, as Hayden Walsh took 29-3 while Sheldon Cottrell claimed 22-2.
Australia lost 39-7 after Marsh's dismissal to Walsh, with the tourists struggling to offer any significant resistance, managing only two sixes for the innings, compared to the West Indies' 13.
HETMYER HITS 'EM
After Chris Gayle failed, Guyana left-hander Hetmyer stepped up with his 61 being his international T20I best, and also only his second half-century for the West Indies.
Hetmyer said: "I think it was one of my best T20 innings. I paced it quite well. The guys backed me to take it as deep as possible. Once you do that, you have a licence."
The 24-year-old capitalized on that licence, hitting Ashton Agar, Marsh and Adam Zampa for sixes in consecutive overs.
Hetmyer was run out with 13 balls left in the innings, before Bravo and Russell added another 34 runs to set an imposing target.
The pair took a liking to Starc, with 15 runs coming from four balls in the penultimate over.
AUSSIES T20I WOES
Finch declined the blame his decision to bowl first for the defeat, while he also refused to give the series away despite trailing 2-0 and being outplayed so far.
The Australia skipper said: "I don’t think the wicket changed a huge amount. I thought it played pretty well. Chasing 190, you have to get off to a pretty good start and when your two openers get out cheaply, it puts a lot of pressure on a reasonably inexperienced international middle order."
On the series, Finch added: "We have to win three games in the series, doesn’t matter if you do it at the start of the series or come from behind."
This is Australia's first games since losing 3-2 in a five-game T20I series in New Zealand in February and March.
Finch's side also lost 2-1 in a T20I International series away to England in September last year as they strive to find their groove in the shortest format.
West Indies skipper Kieron Pollard had won the toss and elected to bat, with the hosts posting 179-4, with England falling short in reply, bowled out for 162 in the 20th over with Player of the Match Holder (27-5) decisive with a double hat-trick in the final over.
After an encouraging start, West Indies did suffer a minor wobble as they lost wickets in consecutive overs, with Kyle Mayers (31) and Romario Shepherd (six) falling in the sixth and seventh, giving England a boost.
Brandon King (34) was the next to go as he was caught at the rope, and Nicholas Pooran (21) was dismissed in the 14th over, with West Indies looking solid if unspectacular ahead of the final five overs of their batting innings.
It was then that they really picked up the slack, with Pollard (41 not out) and Rovman Powell (35 not out) accumulating runs at a much greater rate, their fifth-wicket stand of 74 ultimately integral in the grand scheme of things.
The total of 180 certainly did not look unassailable for England and they reached the halfway stage at 86-2 having only lost Jason Roy (eight) and Tom Banton (16), with James Vince in fine form.
The wickets of Moeen Ali (14) and Liam Livingstone (six) followed just a few minutes apart, and while Vince (55) reached his half-century, he too departed in the 14th as a top-edged slog fell short of the boundary from Akeal Hosein (30-4).
The excellent Sam Billings (41) at least got England into a position where they were still alive in the final over, but they could not meet their target of 20 in six balls as Holder's incredible haul clinched the series.
Holder's historic heroics
Having almost looked without hope, England did make things a little tense towards the end – but what a performance from Holder.
Just when West Indies needed the ultimate display of experience, Holder took over in style. His hat-trick was the Windies' first in men's T20Is, and then he went one better. It was a truly memorable end to the series.
Billings deserving of praise
Although he was not England's highest scorer, Billings did play a vital role in keeping them in contention.
His 41 off 28 balls meant England were still in the hunt in the final over. A poorer showing could have seen them fold much earlier – he can leave with his head held high.
The left-arm paceman has not played for his country since April 2017, but remains as driven as ever to showcase his talents on the international stage.
Tanvir was the leading wicket-taker when Northern won the National T20 Cup late last year and is determined to catch Pakistan head coach Misbah-ul-Haq's eye with a fruitful Pakistan Super League campaign for Multan Sultans.
Mohammad Hafeez, 39, and Shoaib Malik, 38, have recently been recalled by Misbah and 35-year-old Tanvir believes his skill and experience can also be invaluable for Pakistan.
The quick told Omnisport: "I feel that if you don't have the inspiration to play for your country there is no point in playing cricket.
"I started playing when I was seven or eight years old with the dream of playing for my country, that gave me inspiration and I worked hard, made it and played for my country.
"I have always wanted to play well and show my worth. Unfortunately for around two and a half years or so, I didn't play for Pakistan but I'm still inspired to do that and the PSL is going to be key not only for me, but many players trying to play for Pakistan.
"The T20 team is not settled at the moment and the places are pretty much open, so I'm still fancying my chances."
Tanvir says the appointment of Misbah to replace Mickey Arthur has given him renewed hope of wearing the famous green shirt once again.
He added "The mindset is different, Mickey came with a different mindset and approach, he was just giving chances to youngsters.
"On his behalf fair enough, I won't argue about it but Misbah has a different mindset. We have seen more experienced players such as Shoaib Malik and Hafeez coming back into the team, that means age is not an issue and anybody can get a chance.
"That is how it should be, if someone is doing well. You want to win games for your country, it doesn't matter if you are 35 years old or 20 years old, the motivation is to win the game.
"If someone comes into the game with a lot of experience and still wins you games, that is a plus-plus for you instead of youngsters coming in with no experience.
"We all know the pressure of playing T20 cricket, things change very quickly and you have to make instant decisions. Having that experience gives you more confidence in yourself.
"I've not been playing international cricket, but I've been playing in high-quality leagues very close to the level of international cricket. I believe I can serve my country well again.
"The T20 World Cup is in sight this year and there is one next year as well, so I'm fancying my chances.
"I'm right on top of my game, fitness-wise and performance-wise I'm pretty much there, PSL is the key now.
"I had a conversation with Misbah and he was pretty much clear, as other key people have said, we will be looking at PSL, then check on fitness and performance."
The explosive batsman has been named in the squad for next month's World Cup in Australia, having last played for England in a T20I fixture against West Indies in March 2019.
Hales was dropped from that year's World Cup-winning squad after testing positive for recreational drugs prior to the tournament, while then white-ball captain Eoin Morgan cited a "complete breakdown in trust" for his continued exile since.
However, the 33-year-old was recalled after an injury to Jonny Bairstow, and could open on Tuesday when England play the first of their seven-matches series in Pakistan.
"[Being left out of the 2019 World Cup squad] was extremely painful," he admitted. "It's your worst nightmare: to be involved in a World Cup squad, missing out on the eve of it.
"It was brilliant to see the team lifting it, but at the same time, it eats at you inside that you should have been part of it, and you weren't.
"I guess that drives you on, to improve as a person and a cricketer and get that spot back that you feel you deserve.
"I did think that the chance would not come again, for sure. At times, I felt like I wouldn't get this chance again.
"I felt like I'd been playing the best cricket of my career over those three years as well, so to get this chance again at this time is something I'm really proud of and something I'm really looking forward to. I feel like I can help push this team forward."
He continued: "I think I have changed. I've definitely matured. I'm comfortably into my 30s now and turning into a veteran. I feel as though I've grown as a person. Where I am at the moment – on and off the field – is probably the best of my career so far.
"I'm treating this as a blank canvas and only looking to the future now. I'm really looking forward to the next two weeks in Pakistan and what the World Cup can bring."
Kohli confirmed in September that he had decided to take a step back from leading India in the shortest format after the conclusion of the T20 World Cup.
However, he had agreed to stay on as India's ODI and Test captain, and remain available for selection in T20Is.
India failed to progress from the Super 12s in the World Cup, with Rohit Sharma named as captain for the subsequent T20 series against New Zealand.
But on December 8, Rohit was named India's new permanent white-ball captain.
The BCCI president, Sourav Ganguly, explained that the selectors felt there would have too much leadership within the white-ball squad had there been two captains for each of the formats.
Ganguly also claimed that Kohli had been asked to stay on as captain. However, the batsman has contradicted this statement.
"When I decided to leave the T20I captaincy and approached the BCCI about my decision, it was received well," Kohli told reporters.
"There was no offence or hesitation, I wasn't told to reconsider it. It was received well; I was told it's progressive and it's a step in the right direction.
"Then I told them I'd like to continue in Tests and ODIs, unless the office bearers and selectors feel otherwise.
"My communication was clear in what I wanted to do. I gave them the option, that if they feel I shouldn't [remain captain in Tests and/or ODIs], the decision is in their hands."
Kohli, who is staying on as Test captain, also revealed he was only told of the BCCI's decision to replace him as ODI skipper an hour-and-a-half prior to the squad announcement for India's upcoming red-ball tour of South Africa.
"I was contacted one-and-a-half hours before the selection meeting on December 8 for the Test series," Kohli said.
"There was no prior communication to me at all from when I announced the T20I captaincy decision until December 8, when I got a call before the selection meeting.
"The chief selector [Chetan Sharma] discussed with me the Test team, to which we both agreed, and before ending the call I was told the five selectors have decided I will not be the ODI captain, to which I replied, "okay, fine".
"In the selection call afterwards, we chatted about it briefly. That's what happened. There was no communication prior to that at all."
But Kohli is adamant the captaincy call will not impact his preparation for the South Africa Test series.
He added: "To be prepared for a tour like this and to perform to the best of my abilities, nothing has, and nothing can derail me from that.
"A lot of things that happen on the outside are not ideal and not how one expects them to be, but you have to understand you can only do so much as an individual and we have to keep thing in tight perspective and do things that are in your control.
"I'm focussed, mentally prepared, and excited to do the best I can for the team and make the team win."
Buttler experienced a resurgence in his Test match form in England's recent series win over Pakistan and contributed 44 in the first T20I against Australia, which saw the tourists experience a batting collapse and lose by two runs.
He was in imperious form as England cruised home in their pursuit of 158 on Sunday, hitting an unbeaten 77 in a chase completed with seven balls to spare.
Man of the match in the first game, Dawid Malan hit 42 off 32 balls and Moeen Ali (13 not out) provided the finishing touches to ensure Australia's recovery from a start that saw them 30-3 after five overs was in vain.
Jofra Archer's (1-32) blistering start accounted for David Warner in the first over, his third delivery nipping back and glancing the glove of the Australia opener as he went for a duck.
Mark Wood (1-31) then had Alex Carey caught behind for two eight balls later before Steve Smith (10) was run out with a brilliant direct hit throw from England captain Eoin Morgan.
Australia skipper Aaron Finch (40) and Marcus Stoinis (35) counter-attacked for a partnership of 49 to steady the ship.
However, Finch dragged a short ball from Chris Jordan (2-40) onto his stumps and Stoinis steered Adil Rashid (1-25) to slip, leaving Glenn Maxwell (26 off 18) and Ashton Agar (23 off 20) to guide Australia to a defendable total.
Pat Cummins (13 off five) also provided valuable runs but Buttler was in ominous form early on when he struck Cummins through the covers in the second over.
Though Jonny Bairstow (9) was out hit wicket six balls later, Buttler and Malan put England in command with a second-wicket stand of 87 as both again excelled at finding the gaps.
Malan hit seven fours before sending Agar (2-27) to deep midwicket and Tom Banton (2) and Morgan (7) were each unable to provide the support to get England over the line.
That assistance came from Moeen in the penultimate over, which saw him hammer Adam Zampa (1-42) over long-off for six and then smash the spinner over cover for four before Buttler struck the winning runs with a colossal maximum.
Pant did not feature in India's three-match series against Australia last year but has been in supreme form in the longest form of the game.
The 23-year-old has hit half-centuries in each of his last four Tests – two against Australia and two against England – with a high score of 97.
Those performances have seen him return to India's T20 squad and Pant could win his first caps in the short format since January 2020 when Virat Kohli's team take on England over five matches in Ahmedabad, with the series starting on March 12.
Meanwhile, three IPL stars have earned their first call-ups – Suryakumar Yadav, Ishan Kishan, who hit 173 for Jharkhand on Saturday, and Rahul Tewatia.
Rohit Sharma, Bhuvneshwar Kumar and Varun Chakarvarthy are also included, though Mayank Agarwal, Manish Pandey, Sanju Samson and Jasprit Bumrah are not involved in the 19-man selection.
India T20 squad in full:
Virat Kohli (captain), Rohit Sharma (vice-captain), Yuzvendra Chahal, Deepak Chahar, Varun Chakravarthy, Shikhar Dhawan, Shreyas Iyer, Ishan Kishan (wicket-keeper), Bhuvneshwar Kumar, T Natarajan, Hardik Pandya, Rishabh Pant (wicket-keeper), Axar Patel, KL Rahul, Navdeep Saini, Washington Sundar, Rahul Tewatia, Shardul Thakur, Suryakumar Yadav.
Australia and India will play two five-match series in the 2023-2027 FTP cycle, with the last time they have contested that many matches in a series being back in 1992.
There will be 777 internationals during the next cycle - 173 Tests, 281 ODIs and 323 T20Is - compared to 694 in the current one.
England, Australia and India will play the greatest number of Tests, featuring in 22, 21 and 20 respectively.
The next cycle will include five major ICC events, starting with the Cricket World Cup in India next year.
ICC general manager of cricket Wasim Khan said: "I'd like to thank our members for the effort that has gone into creating this FTP for the next four years.
"We are incredibly lucky to have three vibrant formats of the game, with an outstanding programme of ICC global events and strong bilateral and domestic cricket and this FTP is designed to allow all cricket to flourish."
India were routine winners in the series opener at the Ageas Bowl on Thursday and their score of 170-8 on Saturday proved far too much for England, whose star-studded batting line-up wilted to 121 all out.
The tourists played with the aggression of a team sensing their chance to claim an unassailable lead in the three-match series, captain Rohit Sharma (31) and Rishabh Pant (26) putting on 49 in under five overs for the opening wicket.
Rohit was removed by 34-year-old debutant Richard Gleeson as Buttler took a stunning diving catch, and the Lancashire bowler then claimed a memorable double-wicket maiden by dismissing Virat Kohli and Pant in successive deliveries.
Hardik Pandya denied Gleeson a hat-trick but he was one of four batters to fall to the excellent Chris Jordan, Hardik departing in the subsequent delivery after Jordan had removed Suryakumar Yadav in a superb 11th over.
India were wobbling on 89-5 at that stage but Ravindra Jadeja counter-attacked with an unbeaten 46 in 29 deliveries to give them something to defend.
They took the task of doing so immediately, Jason Roy edging Bhuvneshwar Kumar behind for a first-ball duck before Buttler was given out to the same bowler on review for just four.
Liam Livingstone (15) also departed cheaply at the hands of Jasprit Bumrah, England continuing to lose wickets in an innings that lacked impetus until Moeen Ali (35 off 21) offered some.
His exit, and those of Jordan and Gleeson, left David Willey (33 not out) protecting the final wicket, which fell when Harshal Patel uprooted Matt Parkinson's stumps.
Bhuvi gets Buttler (again), and then some
Bhuvneshwar dismissed Buttler for a duck in the first game at Southampton and he proved a thorn in the dangerous skipper's side again, the seamer the pick of the bowlers as his 3-15 turned the match firmly in India's favour.
Rohit's streak continues
Rohit has now captained India's T20I side to victory in 14 successive matches. His run of 13 was already a record and with India claiming back-to-back emphatic victories over one of the world's best white-ball sides, they look in excellent shape for the T20 World Cup later in the year.
The 28-year-old, who had been named in India's squad for the tournament in Australia starting this month, will be forced to watch from the sidelines in a major blow to the team's prospects.
The decision to withdraw Bumrah was taken after he missed India's T20I series with South Africa and comes "following a detailed assessment and in consultation with the specialists", per a BCCI statement.
The BCCI did not specify the exact nature of his injury, although it is reported to be a back stress fracture.
A replacement will be named imminently, with fellow pace bowlers Mohammed Shami and Deepak Chahar both on the reserve list.
India open their campaign against rivals Pakistan in Melbourne on October 23.
After losing their opener to Zimbabwe in their first game after the World Cup, India made no mistake in Kandy as they took a 1-0 lead in this three-game series, piling misery on their hosts.
India made a strong start through openers Yashavi Jaiswal (40) and Shubman Gill (34) before Suryakumar Yadav's 58 carried them to 150 before he was dismissed.
Rishabh Pant fell just short of a half-century as he helped India's charge, though that soon stalled thanks to Matheesha Pathirana, whose impressive performance saw him finish with 4-40.
With India stopped at 213-7, Sri Lanka made a steady start, with Pathum Nissanka and Kusal Mendis combining for 84 before the latter was caught for 45.
Two quick wickets from Axar Patel in the 15th over soon ended any hopes of Sri Lanka coming out on top, though, as Nissanka (79) and Kusal Perera (20) were both taken.
The hosts soon collapsed, losing their last seven wickets in just over four overs as they were bowled out for 170.
Data Debrief: India go from strength to strength
Gambhir could not have asked for a better performance at the start of his tenure with India, with their late performance in the field proving vital.
Just when Sri Lanka looked to be mounting a real attack to chase down the target of 214, they lost nine wickets from their final 5.2 overs to be bowled out well short of their target, with Patal and Arshdeep Singh both getting two wickets each.
The hosts' first game since their disappointing World Cup campaign did not quite go to plan, and they will be looking to bounce back on Sunday.
The second match of three at Dharamsala went the same way as the first – and indeed the seven completed matches between these sides in this format before that.
India were seven-wicket winners after Rohit Sharma put Sri Lanka into bat, although his opposite number Dasun Shanaka threatened to make life tough for the hosts.
While Pathum Nissanka opened with 75, India would have been comfortable with the tourists' scoring rate until Shanaka arrived at the crease.
He then thrashed 47 off just 19 – five of which went for six – in the closing stages of the innings to reach 183-5.
But it was a similar story for India with the bat, as a slow start offered Sri Lanka hope even as Shreyas Iyer made an unbeaten 74.
Rather than Iyer, whose run rate slowed as the target came into view, his partners got the job done in real style, with 39 off 25 from Sanju Samson and then a stunning 45 off 18 from Ravindra Jadeja.
A four from Jadeja fittingly completed the chase on 186-3 with 17 balls still to spare.
Hundred up
India became only the second men's team to reach 100 wins in T20Is, following Pakistan, whose 117 is a benchmark Rohit's side still have a long way to go to match.
Record in sight
India are tallying wins in this format at quite some rate, however. As well as their ninth in a row against Sri Lanka, this was their 11th in succession against all opponents.
Only Afghanistan, among all full-member sides, have had a longer such sequence, but that run of 12 – set between February 2018 and September 2019 – could now be matched in the final match of this series.