Virat Kohli struck his first hundred against Australia Down Under – a run-a-ball 117 – and was part of century stands with Shikhar Dhawan, who made 68, and Ajinkya Rahane, who was out for 50, but India were restricted to 295 for six at the MCG.
John Hastings bagged a career-best 4-58 for Australia, who made life difficult for themselves with the bat after Shaun Marsh’s 62, and the hosts had to rely on Maxwell’s 83-ball show-stealer.
He came in with Australia in peril on 167 for four, and though he was caught by Dhawan attempting to clinch victory and his century at the same time, the hosts won with seven deliveries to spare.
Needing to win to keep the series alive, India lost Rohit Sharma in the fifth over for six when he was caught behind off Kane Richardson, before Kohli and Dhawan shared a 119-run stand.
The pair reached their respective half-centuries in successive Maxwell deliveries, but Dhawan was bowled by Hastings soon after.
Kohli’s sixth boundary hastened his 24th ODI century, while Rahane got to fifty in 54 balls but abandoned his calm to be out next ball to Hastings.
Kohli was caught out charging Durham’s Hastings, and debutant Gurkeerat Singh Mann departed to James Faulkner for eight before Hastings returned to remove Mahendra Singh Dhoni for 23.
Australia threatened to make light work of the chase despite Aaron Finch being caught behind off Umesh Yadav for 21.
Spinner Ravindra Jadeja caused problems and had Steven Smith caught at slip for 41, before having George Bailey stumped for 23.
Shaun Marsh completed a half-century, but when Ishant Sharma had him caught behind for 62, Australia were stumbling on 167 for four.
Maxwell kept the required rate under control, although a good throw by Umesh Yadav from the deep saw Mitchell Marsh run out for 17.
Matthew Wade skied Sharma to Dhawan for six, but Faulkner proved an able ally for Maxwell – who cleared the rope three times and hit eight fours in his match-winning knock.