Florida's Emilio Bonifacio singled in his final at-bat to extend his hitting streak to 25 games.
Javier Vazquez (7-9) allowed a run on six hits and left the game after seven innings owning a 4-1 lead. Cameron then added insurance with a solo shot in the eighth and a two-run blast in the ninth.
That gave Florida enough of a cushion to survive a four-run ninth by the Nationals. Michael Morse drove in the third and fourth runs of the inning with a two-out single, but Leo Nunez then came on to relieve Steve Cishek and got Laynce Nix on a deep fly ball to right to end the game. Nunez recorded his 29th save.
Mike Stanton homered for the Marlins in the first and Nix hit a home run in the fourth to give Washington the only run it managed until the ninth.
Livan Hernandez (5-10) lost to the Marlins for the third time this season, allowing four runs on five hits in four innings.
Exploding whale video goes viral on Internet
Gal Gadot cast as Wonder Woman for 'Batman vs. Superman'