Upton followed by lining a pitch into the left-field corner, plating both runners.
Upton finished with three RBI for National League East-leading Atlanta, which took the first of a three-game series.
David Carpenter (2-0) logged the victory with two scoreless innings.
Marlins starter Kevin Slowey tossed five shutout innings in a no-decision.
Ruggiano provided Miami's only RBI in the loss.