second-wicket stand of 182 before India hit back with quick wickets as the hosts stumbled from 191 for one in the 35th over to 248 for five in the 43rd.
But Shane Watson (28), James Faulkner (21 off 12 balls) and Mitchell Johnson (27 not out off nine) helped Australia plunder 57 runs in the last five overs to ensure they went past the 300-run mark.
Teams batting second had won nine of the last 12 one-day internationals at the SCG and a 10th victory appeared on the cards after Dhawan and Sharma gave India a sound start.
Dhawan was repreived by Brad Haddin in the fourth over when the wicket-keeper dived to his left to hold the edge off Josh Hazlewood, but the ball spilled out of his glove.
Sharma celebrated his partner’s luck by hooking Johnson for a six and Dhawan welcomed Faulkner to the attack in the 10th over with two boundaries and a glorious six over mid-wicket.
The entertaining stand ended in the 13th over when Dhawan stepped out to loft Hazlewood and skied a catch to Glenn Maxwell fielding at deep cover.
Dhawan’s 45 off 41 balls contained six boundaries and a six.
India were hit by a second blow two overs later when star batsman Virat Kohli miscued a pull off a Johnson bouncer and was easily snapped up by Haddin for just one run.
The dismissal continued the Indian vice-captain’s lean run in the tournament where 46 against South Africa was his best effort after a match-winning century against Pakistan.
India were reduced to 108 for four in the 23rd over as Johnson bowled Sharma off the pads for 34 and Suresh Raina was caught behind by Haddin off Faulkner for seven.
Dhoni and Ajinkya Rahane added 70 for the fifth wicket but the skipper saw his partner edging Starc for 44 before Ravindra Jadeja was run out for 16 by a direct throw from Smith.
India’s fate was sealed when Dhoni himself was run out in the 45th over as Maxwell broke the stumps with a smart throw from mid-wicket.
Score Board
Australia won toss
Australia
A J Finch c Dhawan b Yadav 81
D A Warner c Kohli b Yadav 12
S P D Smith c R Sharma b Yadav 105
G J Maxwell c Rahane b Ashwin 23
S R Watson c Rahane b M Sharma 28
*M J Clarke c R Sharma b M Sharma 10
J P Faulkner b Yadav 21
†B J Haddin not out 7
M G Johnson not out 27
Extras (b 1, lb 7, w 6) 14
Total (7 wickets; 50 overs) 328
Did not bat: M A Starc, J R Hazlewood
Fall: 1-15, 2-197, 3-232, 4-233, 5-248, 6-284, 7-298
Bowling: Shami 10-0-68(2w); Yadav 9-0-72-4(4w); M Sharma 10-0-75-2; Kohli 1-0-7-0; Jadeja 10-0-56-0; Ashwin 10-0-42-1
India
R G Sharma b Johnson 34
S Dhawan c Maxwell b Hazlewood 45
V Kohli c Haddin b Johnson 1
A M Rahane c Haddin b Starc 44
S K Raina c Haddin b Faulkner 7
*†M S Dhoni run out 65
R A Jadeja run out 16
R Ashwin b Faulkner 5
Mohammed Shami not out 1
M M Sharma b Faulkner 0
U T Yadav b Starc 0
Extras (lb 8, w 5, nb 2) 15
Total (all out; 46.5 overs) 233
Fall: 1-76, 2-78, 3-91, 4-108, 5-178, 6-208, 7-231, 8-232, 9-232, 10-233
Bowling: Starc 8.5-0-28-2(1nb, 2w); Hazlewood 10-1-41-1; Johnson 10-0-50-2(2w); Faulkner 9-1-59-3(1nb, 1w); Maxwell 5-0-18-0; Watson 4-0-29-0
Result: Australia won by 95 runs
Man of the Match: S P D Smith (Australia)
Umpires: H D P K Dharmasena (Sri Lanka) and R A Kettleborough (England). TV umpire: M Erasmus (South Africa). Match referee: R S Madugalle (Sri Lanka)