Power's victory for Team Penske was also his third win in three races in the 2012 IZOD IndyCar Series, following April victories in Alabama and Long Beach, Calif.
Power, the pole-sitter, led for 63 of 75 laps and held off Andretti Autosport's Hunter-Reay following two late-race restarts for his 18th career IndyCar win.
That gave Team Penske a winning driver in each of the season's first four races as Power increased his points lead to 45 over teammate Helio Castroneves.
Takuma Sato finished third to claim his first-ever podium finish after charging from the rear of the field.
Castroneves came in fourth while defending series champion Dario Franchitti shook off some early race troubles to round out the Top 5.