Goalkeeper Diego Cavalieri helped secure the dramatic victory in Rio de Janeiro by saving a penalty kick taken by Argentine midfielder Dario Bottinelli in the 87th. A minute later Flamengo striker Vagner Love had a goal disallowed for offside.
Fluminense, the league champion in 2010, leads the competition with 59 points -- a six-point lead over Ronaldinho's Atletico Mineiro, which was held to a 1-1 draw by Dida's Portuguesa at Sao Paulo on Saturday.
Also Saturday, Argentina striker Hernan Barcos scored twice in Palmeiras' 3-0 victory over Ponte Preta at the Pacaembu stadium, moving the eight-time champion closer to escaping relegation zone. Defending champion Corinthians, not in contention for the title, beat Sport 3-0 in Sao Paulo on Sunday, while Neymar was sent off in Santos' 1-1 draw with third-place Gremio.
Fred scored his league-leading 13th goal of the season from near the penalty spot after the right-side cross by former Chelsea and Portugal midfielder Deco, leaning sideways while striking a right-foot shot into the left corner.
Flamengo was in position to equalize when right back Wellington was fouled by Fluminense midfielder Diguinho inside the area, but former Liverpool reserve goalkeeper Cavalieri dived to his right to deflect Bottinelli's low shot from the penalty spot.
"Cavalieri has always come through with a big save like that when we needed it most," Fluminense coach Abel Braga said.
"It was a fantastic result," Fred added. "We have to celebrate the goal, the penalty saved and the victory."
It was Fluminense's second consecutive win following a disappointing home loss to last place Atletico Goianiense. Flamengo, meanwhile, dropped to 11th in the 20-team standings, 25 points off the lead.
On Saturday, Atletico Mineiro struggled against Portuguesa at the Caninde stadium in Sao Paulo, extending its winless streak to four matches.
Portuguesa opened the scoring via Leo Silva in the 50th, and Atletico got an equalizer from Bernard in the 65th after a free kick taken by Ronaldinho.
The former two-time world player of the year was contained throughout the match, and Portuguesa had squandered several chances to get the winner in the second half.
Third-place Gremio wasn't able to beat 13th-place Santos, even after striker Neymar was sent off following an altercation with a defender in the 53rd.
Gremio allowed the equalizer just five minutes after the red card, missing a chance to move closer to Atletico Mineiro in the standings. Gremio, coached by Vanderlei Luxemburgo, has 50 points.
Fourth-place Vasco da Gama stayed 12 points behind the lead after a 3-1 win over next-to-last-place Figueirense at the Sao Januario stadium on Saturday.
World Cup veteran midfielder Juninho Pernambucano scored a goal and set up two others as Vasco rallied for the victory in Rio de Janeiro. Ecuadorean striker Carlos Tenorio scored one of the goals for Vasco, last year's runner-up.
In other weekend matches, Palmeiras easily defeated Ponte Preta 3-0, winning two in a row for the first time in this year's Brazilian league. It was the team's third match since World Cup-winning coach Luiz Felipe Scolari left the club and was replaced by Gilson Kleina.
Barcos scored twice in the first 15 minutes at the Pacaembu, and former Real Betis midfielder Marcos Assuncao sealed the win with a goal early in the second half.
Barcos and Chilean playmaker Jorge Valdivia each hit the post late in the game.
Palmeiras remains in relegation zone despite the victory, but it moved to within two points from safety with 11 matches to go. It was eight points back just three rounds ago.
Coritiba scored late in a 1-1 home draw with Sao Paulo and is two points in front of Palmeiras.
In Minas Gerais, Walter Montillo's Cruzeiro and Diego Forlan's Internacional drew 0-0.
Cruzeiro striker Borges converted a penalty kick in the 10th but it was reversed by the referee because players entered the penalty area too soon. Borges then missed the second attempt with a shot over the crossbar.
From Our Network
- IPL: 8 hottest female anchors
- More Indian athletes in Rio Olympics than in 2012, tally at 86 and growing
- Umar Akmal asks for song replay in theatre, picks a fight when demand not met
- Leicester City wins EPL title for first time in 132-year history
- Pak all-rounder Abdul Razzaq blames former coach Waqar for team’s downfall
- IPL: 8 hottest female anchors
- Aamir Khan’s young fan suffering from rare genetic disorder passes away at 15
- Is Anushka Sharma’s ‘Sultan’ teaser COPIED from this short film?
- See Pics: AbRam playing with father Shah Rukh amidst match is too cute to handle
- "Amitabh Bachchan apologised to me on behalf of Jaya Bachchan," says Amar Singh