Zack Wheeler limited the damage in a short but effective outing against his old team, Brad Miller hit a tiebreaking homer and the Philadelphia Phillies held off the New York Mets 4-3 Friday night in a showdown between teams clinging to postseason aspirations.

The Phillies started the day 2 1/2 games behind St. Louis for the second NL wild card, with San Diego and Cincinnati also in the way. They were three games behind NL East-leading Atlanta, with the Mets another 2 1/2 games back of that.

Philadelphia’s bullpen — which leads the majors with 32 blown saves — nearly gave up Wheeler's lead. Archie Bradley allowed two runs in the eighth on doubles by Francisco Lindor, Michael Conforto and Kevin Pillar before Ian Kennedy took over and got the last out of the inning.

CLICK HERE FOR MORE SPORTS COVERAGE ON FOXNEWS.COM

Kennedy also pitched a 1-2-3 ninth for his 23rd save of the season, including seven since a deadline trade from Texas. Brandon Nimmo flied out to the warning track in left-center for the final out, and the Mets (72-76) dropped to 2-15 in their last 17 one-run games.

Wheeler (14-9) allowed a run and struck out six over five-plus innings, walking one and plunking two on 93 pitches. The NL Cy Young Award hopeful stretched his league-leading punchout total to 231 and reached 200 innings in a season for the first time. His ERA inched down to 2.83.

His competition for the Cy Young has heated up down the stretch. Milwaukee’s Corbin Burnes pitched the bulk of a no-hitter last Saturday, while the Dodgers’ Max Scherzer got his 3,000th career strikeout and took a perfect game into the eighth inning Sunday.

Miller put the Phillies ahead 2-1 in the fifth with a solo shot, his 19th homer of the season. Freddy Galvis and Matt Vierling had sacrifice flies, and Didi Gregorius padded the lead with a late RBI double.

Gregorius also made a dazzling defensive gem at shortstop in the seventh, diving to his right for Jonathan Villar's grounder and — from his stomach — flipping the ball 30 feet behind his back to second for a forceout.

Phillies manager Joe Girardi was ejected in the seventh after third base umpire Carlos Torres ruled that Philadelphia's Matt Joyce failed to check his swing.

Taijuan Walker (7-10) pitched two-run ball over five innings for New York, allowing three hits and striking out three. He was lifted after 88 pitches, a sign the Mets are limiting his workload down the stretch after injuries and the pandemic limited the 29-year-old All-Star to 67 1/3 innings from 2018-20.

The 31-year-old Wheeler left the Mets for the rival Phillies on a $118 million, five-year free-agent deal prior to the 2020 season and has mostly tormented New York since. He improved to 4-1 with a 2.62 ERA in nine starts against his former club.

Wheeler threw a shutout against the Mets in their previous meeting Aug. 8 and entered with 22 consecutive scoreless innings against them — most by a pitcher versus his former team since Doyle Alexander's 26-inning run against Baltimore from 1986-88.

Wheeler's streak ended with one out in the fourth, when Javier Báez blooped a bases-loaded single to right that tied the game at 1.

The right-hander was pulled with no outs in the sixth after singles by Lindor and Pete Alonso. José Alvarado relieved and escaped to preserve a 2-1 lead.

TRAINER'S ROOM

Phillies: C J.T. Realmuto was back in the lineup a day after being hit in the left elbow by a pitch. X-rays were negative.

Mets: Nimmo (right hamstring strain) was activated from the injured list and batted second. ... RHP Jacob deGrom (forearm tightness) felt good after a bullpen this week and plans to throw another one this weekend. ... RHP Noah Syndergaard (Tommy John surgery) will either face hitters at Citi Field or on a minor league rehab assignment this weekend. ... LHP Thomas Szapucki was recalled from Triple-A Syracuse and placed on the 60-day injured list due to ulnar nerve transposition surgery. ... RHP Jake Reed was optioned to Triple-A Syracuse. ... RHP Jordan Yamamoto (right shoulder discomfort) was reinstated from the 60-day injured list and optioned to Triple-A.

UP NEXT

Phillies RHP Aaron Nola (7-8, 4.58 ERA) faces Mets RHP Carlos Carrasco (1-2, 5.59). Nola has a 6.41 ERA over four starts since taking a perfect game into the seventh inning against the Padres on Aug. 21.