Rookie goalie Sergei Bobrovsky improved to 19-6-3 as the Flyers won their fourth straight.
Two of the Flyers' most skilled forwards - Carter and Claude Giroux - were in third-period fights. Giroux tangled with Nick Foligno, who had a 36-pound advantage in their close bout. A bit later, there were three fights at the same time, highlighted by Flyers enforcer Jody Shelley's pounding Chris Neil as chants of "Let's go, Flyers!" echoed around the building.
"The fans like it, and it was a good time," Giroux said with a smile.
Coach Peter Laviolette understood why Giroux and Carter dropped their gloves.
"It's probably not something you want to see on a regular basis," Laviolette said after a contest that had 126 minutes in penalties, "but you never know what every game has in store for you. The guys were pretty competitive in the third period to make sure we got a win."
Richards had two goals for the Flyers (31-11-5), who are the NHL's top team with 67 points.
Trailing by 3-0, Ottawa scored a pair of goals in the final 2:04 of the second period to climb off the mat.
"We turned a lot of pucks over, and it took the momentum away from us," Richards said.
"When you have a two-goal lead, you have to keep the hammer down and keep the foot on the gas pedal," Pronger said. "For whatever reason, we backed off again and gave them some momentum, and you saw the result."
Laviolette delivered an impassioned talk between the second and third periods, and the Flyers responded.
It was somewhat similar to Tuesday's game against Washington, when the Flyers coughed up a 2-0 third-period lead before winning in overtime, 3-2.
"We have to push down a little harder and get a bigger lead," Pronger said. "But I don't think anyone on the bench was panicking. We understand the game is 60, 65 minutes."
Ottawa entered the night with just one win in its last 10 games, while the Flyers were on an 8-2 run.
The Flyers set the tone early, getting goals from Briere and Richards for a 2-0 lead after 4:14.
"We knew the scary part about playing Ottawa would be the possibility of a little letdown on our part," said Briere, who was added to the all-star team on Wednesday. "We talked about that all day today, actually. We wanted to come out with a bang."
Briere skated into the offensive zone and, from the top of the right circle, blasted a shot past Brian Elliott after 2:03. It was his 25th goal - he scored 26 in the entire 2009-10 season.
"I got the puck coming down the boards," Briere said. "I saw Ville [Leino] going toward the net, and I kind of pump-faked it for a quick second to give Ville the chance to get to the net. I let it go, and somehow it found the back of the net."
A little more than two minutes later, Richards redirected a Braydon Coburn drive to make it 2-0.
The Flyers scored the two goals on just three shots.
Ottawa, playing without injured forwards Jason Spezza and Alex Kovalev, controlled most of the second period, but the Flyers made it 3-0 when Richards took a pass from Pronger and scored from a bad angle deep in the right circle. The Flyers were on a five-on-three power play with 3:43 left in the period when Richards scored.
Contact staff writer Sam Carchidi at 215-854-5181 or firstname.lastname@example.org. Follow on Twitter at www.twitter.com/BroadStBull.