The champions held their nerve in the death overs as India threatened a sensation on Thursday after Beth Mooney's 54 and Meg Lanning's unbeaten 49 had helped set the underdogs a formidable 173 chase at Newlands.
But fine bowling in the final two overs from spinners Jess Jonassen and Ashleigh Gardner, with India needing 20 to win, enabled Australia to eke out the win that takes them to Sunday's final against either England or South Africa.
Player of the match Gardner's earlier quickfire 31 to go with her two wickets had also given urgency to Australia's innings as they ended on 4-172 after captain Lanning opted to bat first.
Darcie Brown's 2-18 then also proved pivotal as Australia moved to within one win of a third straight world T20 title and their sixth crown in seven editions.
"Today we probably had no right to win it at one point there they were cruising," said Gardner.
"That just shows the way we fight as a team. That's what we do best - when our backs were against the wall, we scrap really hard and we find a way."
Australia got off to a dream start with the ball as Megan Schutt and Gardner took out India's openers Shafali Verma and Smriti Mandhana, respectively, before Grace Harris and Alyssa Healy combined to run out Yastika Bhatia to leave India on 3-28.
But keeping up with the required rate, captain Harmanpreet Kaur, who had fever in the hours leading up to the semi-final, launched India's recovery with an excellent 52, helping them gallop to 3-93 at halfway, 24 more than Australia at the same juncture.
But with 80 needed off 60, India's threatening 69-run, 40-ball fourth-wicket stand between Harmanpreet and Jemimah Rodrigues ended upon the reintroduction of Brown.
An unsuccessful ramp off Brown's surprise short ball over the keeper ended Rodrigues' 24-ball 43.
Healy had endured a forgettable first half behind the stumps, dropping Harmanpreet on 36 and 37 in the space of four balls across overs 13 and 14.
One ball after reaching her fifty, though, the 33-year-old captain's fighting knock ended in the cruellest fashion as Mooney's rocket throw from the deep at the wicketkeeper's end caught Harmanpreet short of her ground, her bat having got stuck into the turf.
"It [Harmanpreet's wicket] was a massive momentum-switcher for us. It's these types of moments that you really need to jump on," Gardner said. "That was probably one of the turning points in the game."
With 39 off 30 needed for India to pull off an upset, Brown's one-run final over swung the momentum back Australia's way.
The 20-year-old took out the last of the opposition's recognised batters, Richa Ghosh, for a 17-ball 14 as a calm McGrath settled underneath a skier at long-on.
Sharma and Rana's 22-run seventh-wicket stand kept India in the hunt, but Australia won critical moments to pull things back, like boundary-rider Ellyse Perry's two diving saves of two runs each – in the 10th over and then in the 19th.
With the bat, Australia were scratchy for the most part and benefited from India's sloppy fielding.
Lanning, dropped on one and nine, struck six boundaries in her 34-ball knock, her highest score of the tournament.
"That is one of the best wins I've been involved in, to fight back after not playing our best cricket in all three facets," Lanning said.