The game was scoreless through 8 1/2 innings, with both teams wasting many scoring opportunities.
Cincinnati left 14 men on base through seven innings with no runs scored, becoming the first team to do so since 1969. They finally came through in the ninth against the Mets bullpen when Brandon Phillips drew a leadoff walk and Ryan Ludwick singled against Manny Acosta (1-3).
Josh Edgin came in to face Bruce, and the Cincinnati right-fielder lofted a deep fly that just made it into the first row of the stands for three-run shot.
The homer made a winner of Jose Arredondo (5-2), who had tossed a 1-2-3 top of the ninth.
Starter Mat Latos tossed seven scoreless innings for the National League Central-leading Reds, who took the opener of a three-game series.
Mets starter Chris Young yielded eight hits and four walks over 5 2/3 scoreless frames.