Former Plymouth Argyle striker Barnes broke the deadlock on 68 minutes at the Withdean Stadium on Saturday with a superb volley after Glenn Murray had shown good awareness to set him up inside the area.
Walsall were reduced to 10 men four minutes later when striker Alex Nicholls received a straight red card following an off-the-ball incident.
Defender Painter then put the Seagulls in control on 80 minutes by scoring at the far post following a cross by Elliott Bennett.
Murray and substitute Jamie Smith came close to extending Brighton’s advantage before substitute Jon Macken pulled a stoppage-time goal back for Walsall following a pass from Matt Richards.
Walsall had made the better start to this League One contest and striker Reuben Reid wasted two good opportunities in the space of two minutes.
Reid miskicked in front of goal after the ball was squared to him by Nicholls before failing to connect when well placed at the near post.