"He needed a nice clean game," interim manager Ryne Sandberg said of Lee. "He needed a 'W,' because in a lot of ways, he's pitched better in the second half than his record."
Lee allowed the Mets' only run in the second inning, though it wasn't entirely his fault.
Marlon Byrd hit a high fly ball to center field, but Roger Bernadina appeared to lose the ball in the twilight. The ball fell in between he and right fielder John Mayberry Jr., who hustled to pick up the ball and throw it into the infield. But Byrd managed to leg out a double.
Andrew Brown then drove Byrd in with a single to give the Mets a 1-0 lead. That was all the offense New York could muster against Lee. The Mets had only two runners in scoring position all night.
"The entire day was difficult all around," Mets manager Terry Collins said.
Philadelphia got that run back and more in the fourth inning. With two outs, Michael Young singled and Darin Ruff walked. Cody Asche then hit a triple into the gap in right-center field to drive in both runners, putting the Phillies up by a run.
It was a big hit for the 23-year-old third baseman Sandberg said is starting to get comfortable with his "whole game." After being called up from Triple-A Lehigh Valley on July 30, Asche began his Major League career 1-for-17.
Since then, he's hitting .303.
"You've got to learn how to control the adrenaline and all the emotions that go along with it," Asche said of being in the big leagues. "You're up here for the first time, it's a special time for you, your family, everybody. So you've kind of got to learn to cut the distractions aside, control your emotions and just get back to baseball."
Asche provided all the run support Lee needed, though the Mets nearly tied it in the sixth inning.
Daniel Murphy hit a long fly ball to right field, and as the ball traveled, fans started cheering thinking it was going to be a home run. But it didn't hang in the air long enough, and Mayberry caught up to it to haul it in on the run as he crashed against the wall.
That out came during a stretch of 11 straight batters retired by Lee.
"Honestly, I didn't feel as good as it turned out. I felt like I had to battle and was able to just continue to get outs," Lee said. "I was throwing strikes and I felt like I had a good changeup working. That kind of saved me, to be honest with you."
Travis d'Arnaud snapped Lee's streak with one out in the bottom of the eighth, hitting a single to left field. Lee then struck out Justin Turner, but walked Lucas Duda to put runners at first and second with two outs for Juan Lagares.
Lee fell behind in the count, 2-0, and then threw a fastball up in the zone that Lagares swung at.
"That definitely bailed me a little bit right there, got me back into the count, it should've been 3-0, instead it was 2-1," Lee said. "I was able to get him out."
He earned that out with his 121st pitch of the night as he struck out Lagares to work out of trouble.
Despite Lee's high pitch count, Sandberg said this was his game to win.
"I figured it was his baserunner on second base, he was throwing the ball well," Sandberg said. "At that point, I wanted to make it his game. It was his game right there."
Lee allowed one run on five hits over eight innings. He walked one, and struck out seven.
It was the fifth time this season that Lee has allowed one run or fewer, and his first start doing so since May 28. Lee also picked up his 11th win of the season and his first since July 5.
Jonathan Papelbon pitched a scoreless ninth for his 22nd save of the season.
It was a rough day for the Mets that was exacerbated by Lee's stellar start. It might've been a battle for him, but he made all the right pitches to make sure he came out on top.
"It was just a game I felt like I was grinding and getting results," Lee said. "I'd like to have more games like that, when I felt like I did tonight."