A James Beattie hat-trick floored Fulham as Southampton battled a two-goal deficit and gale force winds to claim their third Premiership win on the trot.
The home side were 2-0 down with just 24 minutes on the clock, but Beattie's goals and a Brett Ormerod strike 18 minutes from time lifted Gordon Strachan's men into the top half of the table.
Lee Clark and Steed Malbranque had put Fulham two up from the visitors' first attacks.
Clark put Fulham ahead after 16 minutes when his shot took a wicked deflection, and Fulham doubled their lead with 24 minutes gone when Jason Dodd misjudged a cross to allow Malbranque to sweep the ball home.
Beatty got his first from the penalty spot, the second was a header after the break, and he completed his hat-trick with another header.
SOUTHAMPTON: Niemi, Bridge, Michael Svensson, Lundekvam, Dodd, Marsden, Oakley, Anders Svensson, Fernandes, Beattie, Ormerod (Delgado 79). Subs Not Used: Jones, Telfer, Williams, Tessem. Booked: Michael Svensson. Goals: Beattie 27 pen, 42, 53, Ormerod 72.
FULHAM: Van der Sar, Finnan, Goma, Knight (Ouaddou 59), Brevett, Clark, Djetou (Hayles 63), Malbranque, Legwinski, Boa Morte, Marlet. Subs Not Used: Taylor, Melville, Stolcers. Booked: Boa Morte, Goma. Goals: Clark 15, Malbranque 25.
Referee: M Halsey (Lancashire).