Chasing an imposing target of 516 to win the match and go 1-0 up in the series, Australia lost openers Matthew Hayden (29) and Simon Katich (20) to the skill of Harbhajan who struck the blows in his very first over.
Captain Ricky Ponting was on one when tea was called.
The Indians declared their innings an hour before tea to leave Australia chasing the daunting target in four and a half sessions on a pitch that showed no signs of deteriorating.
The highest successful fourth innings chase was 418 achieved by the West Indies against Australia at St. John's in the 2002-03 series.
Hayden, who looked in good touch driving Zaheer Khan for two fours in an over, was trapped leg before while Katich lobbed one for Sachin Tendulkar to take a fine tumbling catch at short point.
Mahendra Dhoni struck an unbeaten 68 off 84 balls with three fours and one six after Gautam Gambhir (104) and Virender Sehwag (90) added 182 for the opening wicket to consolidate India's lead.
Dhoni, who promoted himself up the order ahead of the sedate Rahul Dravid in search of quick runs, completed his 10th Test fifty and also shared a 66-run stand with first innings centurion Sourav Ganguly (37).
Ponting used as many as seven bowlers to check the rampant Indian batsmen who scored at nearly five runs an over.
Gambhir, 27, hit seven fours and a six for his second Test century while Sehwag clobbered eight fours but was unlucky to miss out on a ton on his 30th birthday.
It was a thrilling morning session for the hosts, who made 469 all out in their first innings before bowling Australia out for 268.
Leg-spinner Cameron White (1-30) was forced out of the attack after he was hammered for 13 runs in an over. Sehwag scooped White over mid-off for a four before Gambhir drove the ball into the stands with a six over long-on.
The openers also rode their luck after Gambhir was trapped leg before by Peter Siddle off a no ball and Sehwag appeared to edge Mitchell Johnson but the appeal was turned down by umpire Asad Rauf. TV replays suggested a faint edge.
Sehwag, then on 88, was out after adding four more runs when a thick edge off Peter Siddle (1-62) was taken by Brad Haddin behind the stumps.
Gambhir's knock was cut short by White when he had him caught by Michael Hussey at mid-off.
The first Test in Bangalore ended in a draw. The Mohali Test will be followed by ones in New Delhi (Oct 29-Nov 2) and Nagpur (Nov 6-10).