Seattle's loss, coupled with Oakland's win over Philadelphia, dropped the Mariners lead in the American League West to six games over the defending division champs.
Mets' rookie Jae Weong Seo (3-2) pitched very impressively for the fourth-consecutive outing. The 26-year-old South Korean right-hander, coming off a strong eight-inning victorious performance against Atlanta, held the Mariners to two runs over seven innings.
Down 3-1, the Mariners (40-19) would never recover.
Franklin, who gave up just five hits in seven innings but couldn't avoid giving up the long-ball, fell to 4-4 on the year.
Seattle had their chances throughout the game, starting in the first, but struggled to push runs across the plate.
It started in the opening inning, when with the bases loaded and one out Mike Cameron laced a Seo offering towards the right side of the infield. Second baseman Robby Alomar gloved the liner and tossed it to shortstop Joe McEwing standing on second to force out Carlos Guillen, who was caught off the bag.
Out of that jam, the M's put the pressure on again in the second. With the bases loaded and two outs, Seo again got out of it by forcing shortstop Carlos Guillen to swing at a bad pitch and fly out to short right field. That ended that threat.
Later, in the eighth inning, down 3-1, Seattle centerfielder Mike Cameron led off with a single and Randy Winn followed with his second ground-rule double of the game. That was it for Seo, as the Mets went to their bullpen for veteran David Weathers.
Weathers got Jeff Cirillo, first-pitch swining, to fly out to left field. And following a Ben Davis RBI groundout that made it 3-2, Weathers got pinch-hitter Edgar Martinez to ground out to first to end the inning.
Armando Benitez came on to record his 17th save of the season in the ninth. After a shaky start to the season, where Benitez recorded three losses, the imposing right-hander has settled down over the last month and went 12-straight appearances without a blown save.
The Mets (27-32) snapped their two-game losing streak.
Batta Boone: Bret Boone's ninth-inning single extended his hitting streak to 12 games.