The Gunners looked set to leapfrog Manchester United into second place after Freddie Ljungberg's 45th-minute goal put them ahead against a home side who were reduced to 10 men after midfielder David Prutton was sent off minutes earlier.
However Robin Van Persie, playing up front because of suspensions to Dennis Bergkamp and Jose Antonio Reyes, was needlessly dismissed for a second yellow card after 50 minutes to give struggling Southampton hope.
Striker Peter Crouch headed a 67th-minute
Southampton goalkeeper Paul Smith made superb late saves to deny Thierry Henry, Ljungberg and Ashley Cole, while Cole also had a last-minute header disallowed for offside.
Arsenal stay third on 58 points, one behind United who are in action later at Portsmouth. Leaders Chelsea, who play Liverpool in the League Cup final on Sunday, have 68 points.
Southampton remain third from bottom, one point behind Crystal Palace who host Birmingham City later.