Harvey (5-0) gave the Cubs a pair of first-inning runs but retired 20 of the next 21 batters after that. He allowed five hits, struck out six and didn't allow a walk.
Harvey was replaced with Scott Rice but David DeJesus singled sharply to right. Barney never slowed rounding third on the hit and Byrd came up throwing, hitting catcher John Buck on the fly and nailing Barney by several feet for the out at home.
Bobby Parnell came on for the Mets in the ninth and earned his fifth save.
Harvey had put the Mets up 3-2 with a seventh-inning single in that scored Rick Ankiel, who had doubled.
New York tied the score in the fourth with Daniel Murphy's leadoff home run.
Boston schools pull out free condoms over wrapping complaints
NBC reportedly holds celebs hostage to Jimmy Fallon's show