Scoring three runs in the game, ever-reliant Javier Baez hit his 28th home run of the season and went four for four.
The Mets, who blew an early four-run lead but got 4 2/3 scoreless innings from their bullpen to win for the seventh time in eight games, also had home runs from Francisco Lindor and Jonathan Villar.
Washington has dropped eight of nine games and 24 of its past 31. Lane Thomas and Josh Bell both hit home runs for the Redskins.
With the score tied at 6, Andres Machado (1-2) gave up three straight singles to start the eighth inning before Patrick Mazeika's sacrifice fly to a diving Thomas in centre put the Mets in front.
Lindor hit his 13th home run in the ninth inning, greeting Austin Voth with a first-pitch shot. Pillar blasted his 14th home run of the year and third career grand slam into the left-field seats after Voth allowed three more singles and a walk.
Aaron Loup (5-0) pitched a perfect seventh inning. The Mets' relievers have now won 42 games this season, the most in the National League.
Josiah Gray's three-inning appearance was the shortest of his brief professional career. He struck out two batters while allowing six runs on seven hits. Gray gave up leadoff homers to Villar and Báez in the second and third innings, respectively, after surrendering a four-run first.
Taijuan Walker of New York hasn't won in his previous ten outings, surrendering six runs in 4 1/3 innings. Walker gave up a leadoff homer to Thomas and a two-run homer to Bell in the first, then a two-run single to Juan Soto in the fifth before allowing the tying run to score on a wild pitch.
New York had blown a lead for the third time in as many days before rallying to upset the Nationals.
On Friday, closer Edwin Daz squandered a two-run lead in the ninth inning, but the Mets rallied for a 6-2 victory. Meanwhile, on Saturday, even after blowing away a nine-run lead, the Mets trounced the Washington side 11-9.
With inputs from the Associated Press