"That might've been our biggest win of the year," Nationals manager Davey Johnson said.
Harvey struck out 11 and left with a 4-1 lead after seven innings. It was the latest gem for a pitcher who could start the All-Star Game on the same Citi Field mound next month.
But he was pulled after 109 pitches, and then Washington broke loose. A bunch of hitters contributed to the comeback, which pushed the Nationals back over .500.
"Everybody's been down on what they're capable of doing," Johnson said. "This is a good jump-start."
Zimmerman's bases-loaded double came with two outs against Brandon Lyon, the third of four Mets relievers in the inning. Naturally, Zimmerman was glad to see Harvey out of the game.
"I think you'd rather face anyone now except him," he said. "Just because he leaves, it doesn't make the other guy easier to hit."
Sure looked that way, though.
"It's easy to sit here right now when we've lost the game to look back at the seventh or eighth inning and say you should've left him in or should've made this move or that move. It's a very easy thing to say," Mets manager Terry Collins said.
Collins put down any suggestion that Harvey should've kept pitching.
"Yeah, I could've left him in. No doubt about it. I could've let him throw 150. Decided to take him out. I thought he had enough," he said.
Roger Bernadina got things going in the eighth with a leadoff single against David Aardsma. Josh Edgin, Lyon and Scott Rice later pitched in the inning, which included a key two-out double by Denard Span and a walk to Anthony Rendon.
"It's a nine-inning game. We started feeling it," Bernadina said.
Jayson Werth, who had struck out in all three at-bats against Harvey, hustled for a leadoff double in the ninth against closer Bobby Parnell (5-4). Desmond doubled down the right-field line and later scored on a sacrifice fly by Kurt Suzuki.
The Mets lost after arriving back in New York at 4:30 a.m. after a one-day trip to Denver for a makeup game caused by an April snowout. Harvey, however, had flown back home from Chicago on Wednesday night to rest up, and he was plenty ready.
The bullpen, meanwhile, was ragged after a 7-4 road trip to four cities.
"It's baseball. Those guys go out and pitch every single day and pitch their butt off," Harvey said. "Today just happened to be one of those days."
Harvey retired the first 14 batters before Desmond homered with two outs in the fifth. The right-hander permitted just three hits, raised his NL-leading strikeout total to 132, dropped his league-best ERA to 2.00 and didn't issue a walk.
Josh Satin doubled twice, singled and drove in two runs for the Mets.
A crowd of 28,363 turned out to see the team with worst home record in the majors. But there's a different buzz when Harvey pitches, and fans quickly began clapping in hopes of a strikeout when leadoff man Span fell into an 0-2 hole. Harvey fanned him, too.
Harvey's fastball hit 99 mph on a wet evening.
Desmond's 14th homer came an inning after his error gave the Mets a lead.
David Wright lined a double off Zimmerman's glove at third base to open the fourth and Marlon Byrd followed with a grounder that Desmond bobbled and threw away, ending the shortstop's 59-game errorless streak and allowing Wright to score.
Desmond lofted a long fly over the left-field wall with two outs in the fifth, tying it at 1.
The Mets scored twice in the fifth when Byrd hit an RBI double and Satin singled home a run off Ross Detwiler. Satin's RBI double in the seventh made it 4-1.
Mets RHP Zack Wheeler will make his home debut Sunday, with lots of family in attendance. Collins said the rookie and pitching coach Dan Warthen had worked on a few things to make Wheeler more comfortable on the mound. Wheeler certainly sounded unfazed as he settled in at Citi Field. "Big league clubhouse, big league field," he said. ... The Nationals will promote RHP Taylor Jordan from Double-A Harrisburg to make his big league debut Saturday. He is 9-1 with a 1.00 ERA in Double-A and Class-A this season, and has been picked for the All-Star Futures Game at Citi Field next month. Johnson said he thought Jordan would get at least two-three starts in the majors. INF Chris Marrero will be sent down. ... OF Bryce Harper (left knee bursitis) is on track to rejoin the Nationals when they host Milwaukee on Monday. ... Detwiler is winless in four starts since going on the disabled list because of a back strain. ... Harvey has five games this year with double-digit strikeouts. ... Zimmerman is 3 for 3 with two doubles, two walks and a hit by pitch in his career against Lyon.
'I love it here, but it's still a business': Mookie Betts' future looms large in Boston
Boston's title defense is over and its front office is in flux. And with their biggest star approaching his walk year, the Red Sox have a ton of work to do this winter and beyond.
Cardinals-Cubs with a division title on the line: Breaking down the high-stakes showdown
It doesn't get much better than two of baseball's bitter rivals squaring off with a playoff spot up for grabs. We look at the matchup from both sides.
Law: Shane Bieber and four other players I was wrong about
A Belieber? Keith Law was not. Here's how Cleveland's breakout pitcher and other surprising stars have outperformed expectations.
The biggest surprises and disappointments of the 2019 MLB season
We knew the Yankees would hit a lot of home runs, but not DJ LeMahieu and Gio Urshela. The Phillies spent big but didn't cash in. Here are the top overachievers and the worst flops.
Twins face Royals, look to extend lead on Indians
The Minnesota Twins open their final home series of the season on Thursday night when they begin a four-game set with the Kansas City Royals at Target Field in Minneapolis.
Cubs host Cardinals with division on line
The ballpark always buzzes when the Chicago Cubs take on the rival St. Louis Cardinals.