Jimmy Rollins homered with the help of video replay and Domonic Brown also hit a solo shot off Dickey (18-6). The Phillies pulled within 3½ games of idle St. Louis for the second NL wild-card spot, though other teams are also in their path.
Philadelphia had lost three of four at last-place Houston before arriving at Citi Field, where visiting teams have feasted. The Mets have dropped nine of 10 overall, and fell to 4-22 at home since the All-Star break.
Lee (6-7) turned in his fifth straight sharp start, allowing seven hits over eight innings. He was in control, as always, with one walk. He has gone 14 consecutive starts with no more than one free pass.
The 33-year-old lefty trotted to the mound to start his innings, and often was the first Phillies player on the field. When no catcher was in position for warmups, Lee would get on the rubber, go through a full windup and simulate a pitch - toward second base, that is. It's a quirk of his, and keeps him loose.
Lee, who earned his elusive first victory of the season on July 4 at Citi Field, became the latest pitcher to shut down the Mets in their own ballpark. The Mets have scored three runs or fewer in a team-record 14 straight home games.
Jonathan Papelbon pitched the ninth for his 35th save in 39 chances.
Dickey missed a chance to tie Washington's Gio Gonzalez for the major league lead in wins, and has lost two decisions in a row for the first time this year. Dickey projects to get three more starts this season.
The knuckleballer allowed three runs, two earned, on five hits and two walks in seven innings. He struck out eight - he has 205 this year, one behind NL leader Clayton Kershaw of the Dodgers - and lowered his ERA a tad to a league-best 2.67.
Dickey's signature floater was fluttering from the get-go. His first pitch of the game eluded catcher Mike Nickeas and went to the backstop, and his second pitch sent a swinging Rollins to his knees.
Rollins eventually struck out, but reached on Nickeas' passed ball. Dickey made a wild toss on his fourth pickoff try to first base and Rollins later scored on Chase Utley's sacrifice fly.
Rollins hit a drive over right fielder Scott Hairston's outstretched glove at the top of the wall in the fifth and pulled into third base with an apparent triple. After a brief look at the replay, the umpires waved him to the plate. Rollins has 21 home runs this year, six this month.
Brown led off the seventh with his fourth homer.
The Mets nicked Lee in the fifth. Nickeas put down a perfect bunt on the first pitch and the backup catcher hustled for a single. Dickey sacrificed and Daniel Murphy blooped a two-out single for a run.
NOTES: The Phillies are 6-10 against the Mets this year. ... The last team to score three runs or fewer in more consecutive home games than the Mets was Seattle, which went 16 in a row in 2010. ... The Mets' Triple-A affiliate will move from Buffalo to Las Vegas for the next two seasons. Toronto is set to switch its top farm team from Las Vegas to Buffalo. Mets manager Terry Collins says hitting stats at high altitude in the Pacific Coast League "can be a little deceiving." ... A few rows of temporary seats were added in foul territory, next to the backstop. It's a test for when Citi Field hosts the All-Star game next year.