Starting from pole position for the seventh time this season, Stoner completed the 28 laps of the 2.621-mile Indianapolis Motor Speedway road course in 46 minutes, 52.786 seconds.
Stoner, making his seventh start of the year from the pole, finished 4.828 seconds ahead of defending world champion Dani Pedrosa of Spain.
American Ben Spies, who started the race from the middle of the front row, finished third.
Jorge Lorenzo of Spain, who began the race in second place behind Stoner in the world championship standings, was fourth.
Stoner's victory extended his lead in the championship from 32 to 44 points.