Kurt Suzuki put the Nationals ahead with a home run right after catcher Kelly Shoppach dropped his foul popup for an error. Ryan Zimmerman launched a two-run shot later in the third inning and Ian Desmond added a two-run drive in the fourth.
That was plenty for Gonzalez (19-7) and the team with the best record in the majors. The lefty gave up three hits over six innings — none until Scott Hairston homered in the fourth.
Gonzalez worked around five walks and extended his career high for wins.
The Mets lost their fourth in a row, dropping to 4-19 in their last 23 games at Citi Field. They tied a team record by scoring three or fewer runs for the 11th straight game at home, matching the mark last done in 1979.
David Wright and his teammates have gone 106 straight innings at home without scoring more than one run. This loss eliminated them from the NL East race.
New York rookie Collin McHugh (0-2) served up three homers in his third major league start.
REDS 4, PIRATES 3, 14 INNINGS
CINCINNATI (AP) — Ryan Ludwick drove in the winning run with a two-out infield single in the 14th inning, lifting Cincinnati to a marathon victory that handed the fading Pittsburgh Pirates their fourth straight loss.
Rick VandenHurk (0-1), called up before the game, started the 14th and gave up a single by Devin Mesoraco. Brandon Phillips reached when the Pirates failed to get a forceout on his grounder, and the runners advanced on a wild pitch.
Pirates shortstop Chase d'Arnaud couldn't come up with Ludwick's grounder in the hole, finally ending it.
Pittsburgh loaded the bases with none out in the top of the 14th against Alfredo Simon (2-2) and failed to score. Andrew McCutchen homered earlier for the Pirates, but four straight losses and 21 in the last 30 games have dropped them a season-high 12 games behind the first-place Reds in the NL Central.
PADRES 11, CARDINALS 3
SAN DIEGO (AP) — Cameron Maybin hit a two-run homer, Will Venable had three RBIs and San Diego beat the struggling Cardinals.
St. Louis, which has lost four of five, had its lead cut to one game over the idle Los Angeles Dodgers for the second NL wild-card berth. The loss started a crucial seven-game West Coast trip for the Cardinals, who begin a four-game set Thursday night against the Dodgers.
Maybin connected off Jaime Garcia (4-7) to break a 2-all tie in the fourth inning. Maybin had three hits and scored three runs.
Chris Denorfia tied his career high with four hits and also had two RBIs. Logan Forsythe added three hits to tie his career high as San Diego had 17 hits and matched its season best for runs.
Eric Stults (6-2) allowed three runs and five hits in 5 1-3 innings. He is 5-0 in seven starts since rejoining the Padres' rotation on Aug. 6.
San Diego has won 14 of 18 overall and 18 of 24 at home.
BREWERS 4, BRAVES 1
MILWAUKEE (AP) — Norichika Aoki hit a two-run double to key a four-run seventh inning and Milwaukee rallied to beat Atlanta.
The Brewers sent 10 batters to the plate in the seventh but did all their damage on two hits and a sacrifice fly in snapping the Braves' five-game winning streak.
Milwaukee's 16th win in 21 games has brought the Brewers back to the fringe of the NL wild-card race.
Jonny Venters (5-4), trying to protect a 1-0 lead for Braves starter Mike Minor, made a key error in the seventh.
Jose Veras (4-4) pitched out of a bases-loaded jam to earn the victory. John Axford worked the ninth for his 28th save.
ROCKIES 6, GIANTS 5
DENVER (AP) — Rockies pitcher Alex White homered and Colorado finally solved a struggling Ryan Vogelsong, beating San Francisco to snap a five-game losing streak.
Buster Posey and Hunter Pence went deep for the Giants, who lost for only the second time in 10 road games. San Francisco's lead in the NL West was trimmed to five games over the idle Los Angeles Dodgers.
Matt Belisle escaped an eighth-inning jam to preserve Colorado's one-run lead and Rafael Betancourt pitched a 1-2-3 ninth for his 28th save in 33 chances. Guillermo Moscoso (2-1) picked up the victory by allowing one run in two innings.
Colorado manager Jim Tracy was ejected in the bottom of the seventh by second base umpire Angel Campos after a heated argument over an inning-ending double play.
Vogelsong (12-8) gave up four runs and six hits over five innings, falling to 2-3 with a 9.57 ERA in his last six starts. The right-hander entered 5-0 with a 1.80 ERA in six previous starts against the Rockies for the Giants.
PHILLIES 3, MARLINS 1
PHILADELPHIA (AP) — Kyle Kendrick struck out a career-high eight over seven strong innings to lead Philadelphia past Miami for its fifth straight win.
Staked to a 3-0 lead, Kendrick (9-10) took a no-hitter into the sixth before Rob Brantly's leadoff single. The right-hander escaped a bases-loaded jam when he struck out Giancarlo Stanton.
Often overlooked on a staff that includes Cole Hamels, Roy Halladay and Cliff Lee, Kendrick is a huge reason why the Phillies (70-71) are making a late push to get into the NL wild-card race. He's won five of his last six starts and allowed two earned runs or less in each of his past six.
Domonic Brown hit a two-run homer off Wade LeBlanc (2-4), and a hustling Michael Martinez scored on a wild pitch in a three-run fifth. Antonio Bastardo tossed a scoreless ninth for his first save this season.
The Phillies have won 13 of 17 overall.
CUBS 4, ASTROS 1
HOUSTON (AP) — Dave Sappelt scored the go-ahead run on a wild pitch and had three RBIs, leading Chicago over Houston in a matchup of teams with the two worst records in the majors.
Sappelt, recalled from Triple-A Iowa on Sept. 1, drove in his first run for the Cubs with a double in the second inning. The game was tied 1-all in the sixth before he scored on a wild pitch by Fernando Rodriguez (1-10). Sappelt added a two-run double in the seventh and Chicago won its fourth straight, matching a season high.
Cubs starter Chris Volstad (3-10) allowed four hits in five innings. Carlos Marmol earned his 19th save.
There were 14 walks, two hit batters, three wild pitches and 24 runners left on base in a game that took 3 hours, 50 minutes.