Corinthians missed the chance to go top of the Campeonato standings as they were held to a 1-1 draw away to Atletico Paranaense.
The hosts took a 35th minute lead through Cleber Santana's penalty, but Corinthians levelled with another spot-kick, this one from Alex Meschini two minutes into the second half.
The result leaves Corinthians a point behind leaders Flamengo, although Corinthians still have a game in hand.
Sao Paulo sit third, two points off the summit, after a 2-1 away win over Avai.
Two quick goals from Santos Cicero in the 65th and 69th minutes brought them from behind after William Souza put the hosts in front on the hour mark.
Sao Paulo now hold a four-point advantage over fourth-placed Vasco da Gama, who suffered a 4-0 reverse away to Botafogo and finished the game with 10 men.
Antonio Carlos put the hosts ahead nine minutes in and two goals from Loco Abreu had them 3-0 up at half-time.
Things got worse for Vasco when Diego Souza was sent off in the 66th minute, and German Herrera capped it for Botafogo with a last-minute strike.
Basement side America MG picked up only their second win of the season and did so in convincing fashion as they saw off Fluminense 3-0.
Rodrigo Rodriguinho put them ahead after 10 minutes and Nascimento Alessandro doubled the lead from the penalty spot eight minutes into the second half.
After Wellington Gum was sent off for the visitors with 19 minutes to go, Marcos Rocha added a third for America.
Leandro Fahel grabbed the winner with 17 minutes left as Bahia beat Atletico Goianiense 2-1.
Cesar Juninho had struck two minutes into the second half to cancel out Jobson De Oliveira's opener but Fahel ensured the hosts got the points.
Internacional came from behind to beat Cruzeiro 3-2.
Ramon Anselmo gave the visitors an 11th minute lead, but Andres D'Alessandro levelled from the penalty spot nine minutes later.
Luiz Andrezinho added a second before half-time and Leandro Damiao made it 3-1 in the 73rd minute.
Leandro Guerreiro got the visitors back in it with nine minutes to go, but they could not find an equaliser and ended the game with 10 men as Gil Bahia saw red in the final minute.
Humberlitos Borges scored in the 32nd minute to give Santos a 1-0 win over Ceara.