Ian Desmond also went deep and Jayson Werth had four hits for the Nationals, who followed up their 10-inning comeback on opening day with a more routine victory against one of Gonzalez's favorite foes. The left-hander struck out six and walked one in six comfortable innings, improving to 6-0 in his last seven starts against New York.
Mets manager Terry Collins stacked his strikeout-prone lineup with eight right-handed hitters, but it hardly mattered. New York provided little support for Bartolo Colon (0-1), touched up for nine hits over six innings in his Mets debut.
The beefy right-hander signed a $20 million, two-year contract in the offseason after going 18-6 with a 2.65 ERA for Oakland last year, when he finished serving a 50-game suspension for a positive drug test.
Desmond and Gonzalez (1-0) both homered in the fifth against Colon, who gave up only 14 long balls in 190 1-3 innings last season.
Drew Storen, Tyler Clippard and Craig Stammen finished a three-hitter, the latest disappointment for the Mets already this season. On their off day Tuesday, they learned closer Bobby Parnell has a partially torn elbow ligament that might require surgery.
For now, Parnell will try resting for two weeks before beginning a throwing program.
In addition, new outfielder Chris Young came out in the top of the second inning - before even coming to bat - with tightness in his right quadriceps. The injury kept Young on the bench in the opener.
New York struck out 13 times for a two-game total of 31.
Juan Lagares, an early bright spot, got the Mets off to a good start with a leadoff triple. He scored on David Wright's sacrifice fly, snapping Gonzalez's streak of 16 shutout innings at Citi Field.
Gonzalez settled in from there, however, quieting a New York lineup that fanned 18 times in the opener.
Consecutive doubles by Werth and Adam LaRoche tied it in the fourth. Desmond hit the first pitch of the fifth over the left-center wall, and Gonzalez went deep two batters later.
A right-handed batter, the pitcher drove a 2-2 delivery off the railing just above the shortened fence in left-center at Citi Field. The ball caromed back onto the field and Gonzalez sprinted home, unaware that second base umpire Todd Tichenor was signaling home run.
Mets left fielder Andrew Brown hardly rushed after the ball, and the umpires didn't even look at a replay.
It was Gonzalez's third career homer. He also connected during his first outing last season off Miami's Kevin Slowey, and in August 2012 against Houston right-hander Armando Galarraga.
Ruben Tejada tried to score from first when Lagares doubled inside third base with two outs in the fifth, but was cut down at the plate on a strong throw by left fielder Bryce Harper.
Tejada, who broke his leg last September, didn't bother to slide or try to elude catcher Jose Lobaton - perhaps well aware of baseball's new rules banning home plate collisions.
Denard Span doubled off reliever Gonzalez Germen to start the seventh and went to third on Anthony Rendon's double. Span scored on Germen's wild pitch, making it 4-1.
Span tripled in the ninth and scored on Rendon's groundout.
NOTES: Nationals rookie manager Matt Williams recalled playing third base behind Colon when the right-hander made his major league debut with Cleveland in 1997. ... Washington RHP Jordan Zimmermann starts the series finale Thursday afternoon against RHP Zack Wheeler. ... Mets LHP Jonathon Niese (elbow) joined the team after pitching in a simulated game Tuesday against Class-A St. Lucie in Florida. He is on track to come off the disabled list and start Sunday against Cincinnati.