Chase Huchingson tossed five innings and allowed three runs and eight hits with one walk and three strikeouts.
Jack Leathersich was charged with the loss after allowing one run and four hits in 2 1/3 innings with one walk and five strikeouts. Jeff Walters pitched 1 2/3 scoreless innings and struck out one.
Cory Vaughn hit a bases loaded two-run single to right in the third inning to give the Mets a 2-1 lead.
Rivera's RBI double down the right field line scored Juan Torres in the fourth inning to put the Mets ahead 3-2.
The Mets were limited to just four hits and failed to produce a hit after the fourth inning.
Zach Lutz batted third and played third base, finishing 0-for-1 with two walks in his first game with St. Lucie after coming off Triple-A Buffalo's disabled list.
The Hammerheads pushed across the go-ahead run in the eighth inning on an RBI single by Aaron Dudley to plate J.T. Realmuto.
The Mets will look to bounce back in the second game of the series on Thursday. The game is scheduled for 6:30 p.m. at Digital Domain Park. Rafael Montero is the scheduled starter for the Mets.