The lone Miami hit came on a first-inning single by Donovan Solano and Moore eventually allowed four other base runners, one of those reaching on an error.
Moore (4-5) defeated the Marlins for the second time this year and helped the Rays snap a three-game losing streak.
Desmond Jennings led the Tampa Bay offense with four RBI, three of them coming on a double in the seventh. Will Rhymes added a pair of one-run singles and Ben Zobrist hit a solo homer.
Carlos Zambrano (4-5) allowed four runs on three hits with six walks in only two-plus innings to take the loss. He walked three straight batters to start the second inning, during which Tampa Bay scored its first three runs.
The Marlins have dropped nine of their last 10 and have lost their last eight meetings with the Rays.