Brandao's opener and a brace by Pierre-Emerick Aubameyang sealed a routine victory for St Etienne, who have now won five and drawn two of their last seven games and remain beaten away from home in the league in 2013.
The visitors' night was marred by the second-half dismissal of Fabian Lemoine, while Nancy also ended a man light after substitute Florent Zitte was sent off just minutes into his Ligue 1 debut.
The win puts St Etienne fifth, just two points behind third-placed Marseille who are preparing for Sunday's tough trip to face leaders Paris St Germain.
Montpellier moved up to sixth with a 1-0 win away to Evian, with Younes Belhanda scoring 10 minutes from time in a smash-and-grab raid on their relegation-battling hosts.
Rennes lost ground in the European battle with a 2-2 draw at home to Sochaux, but it would have been worse not for a late leveller from on-loan midfielder Jean Makoun.
Although John Boye had cancelled out Giovanni Sio's opener, Sebastian Corchia had restored Sochaux's lead in the 56th minute, and it held until two minutes from time when Makoun got the crucial touch in a goalmouth scramble to salvage a point.
The dropped points mean Rennes are now only one point above Lille, who ran out comfortable 3-1 winners away to Ajaccio despite playing the final half-hour with 10 men.
Yohann Poulard's own-goal six minutes before half-time put Lille ahead and although Lucas Digne saw red in the 61st minute, a brace from Dmitri Payet wrapped it up before Chakhir Belghazouani's late consolation for the hosts.
Struggling Troyes took a point off Bastia in a 0-0 draw while the mid-table clash between Valenciennes and Toulouse also finished goalless.