Andres Torres backed Dickey with a 3-for-3 day, which included a home run, triple and double. He drove in three runs and scored twice.
Dickey improved to 15-3, tying Jered Weaver for the major-league lead in wins.
He faced the minimum 15 batters over the final five innings and ended up with 10 strikeouts. He hit a batter but didn't walk any.
The Mets reached Marlins starter Josh Johnson (7-8) for eight hits and three runs over six innings.
Josh Thole singled in Ike Davis for a 1-0 New York lead in the second inning. After Ruggiano tied the score in the fourth, the Mets got an RBI double from Torres in the bottom of the inning to retake the lead.
Torres hit a solo home run in the sixth and David Wright drove in Scott Cousins with a single in the seventh. New York finished the scoring when Torres tripled in one run and scored another in the eighth.