Arroyo (9-3) picked up his fourth win in his last five decisions. He gave up just two runs as the Reds ended a three-game slide and won for just the second time in their last 10 games.
Ken Griffey Jr. had a sixth-inning homer and Brandon Phillips added a pair of insurance runs in the eighth for Cincinnati. Griffey's homer was the 548th in his career, moving him into a tie for 11th all-time with Hall-of-Famer Mike Schmidt.
Carlos Beltran homered and drove in two runs for New York, which has lost three of its last four games.
New York starter Orlando Hernandez (4-6) suffered the loss, despite yielding just two runs on eight hits in seven innings.