Victory, who led at half-time through Jimmy Jeggo's goal, saw Zac Anderson equalise for the before he went from hero to zero by giving away a penalty that James Troisi converted.
Substitute Kosta Barbarouses added another goal in injury time to seal three much-needed points for Kevin Muscat's side.
The win lifts Victory above the Mariners and Adelaide and into third in the A-League, with seven points separating them from seventh place ahead of the rest of the weekend's action.
Having suffered five defeats from their last six A-League matches, the Mariners will be looking over their shoulder during the final five rounds of the campaign as they seek to prolong their title defence.
Jeggo broke the deadlock after 31 minutes. Guilherme Finkler, positioned inside the penalty area, did well to cushion down Connor Pain's pass from out wide before turning and laying it off to Jeggo, who took a touch and beat his man, firing through a crowded penalty area and into the far corner of the net.
The Mariners had a Victory goalkeeping error to thank for their equaliser, something that has become a familiar sight in recent weeks.
Lawrence Thomas, promoted last week in place of the inconsistent Nathan Coe, failed to clear a routine delivery from a set-piece, missing the ball completely and allowing Anderson to stab home the equaliser.
The goal-scorer turned unfortunate villain of the piece for the visitors in the 76th minute, handling an Archie Thompson shot inside the area and conceding a spot-kick that Troisi slammed home off the underside of the crossbar.
Barbarouses made absolutely certain of the spoils late on when he finished off a Victory counter-attack by tucking the ball beyond a helpless Liam Reddy from close range.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.