Boston United were stung by a 95th-minute winner as they sunk to their sixth home defeat of the season.
Gavin Allott’s late finish appeared to have earned the Pilgrims a share of the spoils, only for Ryan Astles to have the final say deep into stoppage time.
The result means Craig Elliott’s side remain ninth in the National League North, but now sit nine points behind leaders Bradford Park Avenue.
Jack Sampson put Southport ahead in the 16th minute.
Allott appeared to have grabbed a point with a trademark header 10 minutes from time as he found the net.
And the same player was within a whisker of tuning the contest on its head as he struck the post a minute from time.
But deep into the additional minutes it was the Sandgrounders who left with the win, Reagan Ogle’s long throw causing problems before Astles forced the ball over the line.
Allott and home debutant Danny Rowe both had half chances early on before Sampson opened the scoring, courtesy of Bradley Bauress’s assist.
Boston keeper George Willis denied Jordan Richards with a good save before opposite number Dan Hanford kept out Allott’s header, tipped Andi Thanoj’s strike onto the bar and got behind Ben Davies’s free kick.
After the interval Jordan Slew somehow hooked his effort over the Port bar while Jones slid in to clear Morgan Homson-Smith’s goalbound effort off the line.
Allott met Max Wright’s cross to make it 1-1, before Wright was denied by Hanford.
Then came the late drama, Allott almost taking his chance and the visitors ensuring they took theirs.
UNITED: Willis, Davies, Jackson, Thanoj, Jones, Qualter, Hine (Wright 61), Norris, Allott, Rowe, Slew (Johnson 61); Subs (not used): Middleton, Parkhouse, Harris.
SOUTHPORT: Hanford, Richards, Ogle, Morgan, Edwards (Astles 48), Winnard, Charles, Wood, Archer (Green 75), Sampson, Bauress (Homson-Smith); Subs (not used): Davies, Mueller.
REF: Barry Lamb.
ATT: 1,146 (55).