Sao Paulo close gap on faltering Palmeiras
Palmeiras' tenuous grip on top spot was further eroded when they were beaten 1-0 away by Coritiba, extending their winless run to four games.
Sao Paulo, who notched their seventh successive victory improved to 36 points from 20 matches, one point off Palmeiras.
Palmeiras, who had drawn their three previous matches, could lose top spot if Goias, now with 35 points, beat lowly Nautico on Thursday night.
Midfielder Richarlyson scored a deserved winner for Sao Paulo winner in the 23rd minute after a fine solo run.
"Sao Paulo are going to fight to shoot down the leaders in the next three or four games," Sao Paulo captain and goalkeeper Rogerio Ceni told reporters.
Ten points separate the top 12 teams in the Brazilian championship.
Palmeiras, under coach Muricy Ramalho who led Sao Paulo to the last three league titles, fell to a last-minute penalty from former Hertha Berlin striker Marcelinho.
Four players were sent off in a tempestuous affair as Palmeiras' slump continued.
Corinthians maintained their spell over Internacional, who they beat in the Copa Brasil final earlier in the season, with a 2-1 away win to climb within six points of Palmeiras.
Striker Jorge Henrique scored the winner three minutes from time.
However, fourth-placed Inter still have two games in hand which could see them bridge the four-point gap that separates them from the leaders.