The goal came four minutes after the Fire appeared to take the lead. Oduro's 15-yard shot clearly crossed the goal line before New York defender Wilman Conde slid and cleared the ball to the sideline, but neither referee Baldomero Toledo nor assistant referee Ian Anderson saw it. Replays showed the ball in the goal and Anderson well up the sideline, out of position to confirm the goal.
Rolfe made it 3-1 in the 81st minute, taking a low pass from Patrick Nyarko in the goalmouth and converting.
The victory snapped a two-game losing streak for the Fire. New York had been 5-0-1 in its last six MLS matches, but hadn't played a league match since May 23.
Nyarko had opened the scoring in the fourth minute, heading Sebastian Grazzini's pass to Meara's right as the goalkeeper lunged to the left.
New York's Dax McCarty tied the game on a set-piece header in the 55th minute. Lurking on the left side, McCarty headed in the long corner-kick cross from Mehdi Ballouchy. Fire goalkeeper Sean Johnson failed to adjust for McCarty's header.