Brazilian Serie A leaders Cruzeiro trailed at half-time after Paraguay international Cristian Riveros fired Gremio into a 13th-minute lead at the Arena do Gremio in Porto Alegre.
Gremio - unbeaten in six matches prior to kick-off - were utterly dominant during the opening 45 minutes and they were made to pay in the second half.
Brazil international striker Ricardo Goulart equalised in the 66th minute, side-footing a rebound into the roof of the net from close range for his 14th goal of the league campaign.
Fellow international Everton Ribeiro completed the comeback 14 minutes from time, when he placed the ball past Gremio goalkeeper Marcelo Grohe and into the bottom corner of the net.
After extending their unbeaten streak to seven games, Cruzeiro are seven points clear of nearest rivals Sao Paulo with three rounds remaining and can clinch back-to-back titles by beating Goias on Sunday.
The only other match on Thursday saw relegation-threatened Chapecoense rout seventh-placed Fluminense 4-1 away from home.
Bruno Silva bagged a brace for the visitors, who moved a point above the drop zone.
Corinthians consolidated third spot thanks to a narrow 1-0 win at Goias on Wednesday.
A 45th-minute own goal from Felipe Macedo was the difference between the two teams as Corinthians made it seven matches without defeat.
Atletico Mineiro are two points behind Corinthians after they dismantled Flamengo 4-0.
After hitting the post and being denied by Paulo Victor's sensational goal-line save, Mineiro finally took the lead in the 25th minute through Luan.
Brazil international Diego Tardelli converted a penalty on the stroke of half-time, while Luan and substitute Dodo completed the scoring in the second half.
In other results, Robinho was on target as Santos drew 1-1 at Atletico PR.
Santos are in the midst of a six-game winless run in the league.
Third-bottom Bahia boosted their survival hopes with a 1-0 at cellar-dwelling Criciuma.
Figueirense were 1-0 winners over Botafogo, Sport Recife accounted for Palmeiras 2-0, while strugglers Vitoria and Coritiba played out a 1-1 draw.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.