"We got contributions across the board," Chicago coach Joel Quenneville said. "We had some timely goals from the right guys. A big win for us."
Hossa scored on a power play and short-handed for his first multigoal game of the season.
"We knew we were going to have to weather the storm in the beginning," said Toews, Chicago' leader with 16 goals. "I felt we did that really well."
Elliott fell to 10-2 and had a six-game winning streak snapped. He hadn't allowed more than two goals in his 11 starts, had stopped 239 of his previous 249 shots and came into the game leading the NHL in goals- against average (1.31) and save percentage (.951).
Elliott said he was screened on three of the goals.
"Sometimes they hit you and stay out, sometimes they go in," Elliott said. "I don't think we played the kind of hockey that we wanted to. We just have to learn from tonight. It's not the end of the world."
Chicago goalie Ray Emery outplayed Elliott, making 23 saves. Emery improved to 4-1-1 with his third career win over St. Louis in three starts.
The Blackhawks scored three straight goals to erase a 2-1 deficit.
Sharp broke a 2-2 tie with a power-play goal late in the second period. He has 13 goals, including eight in the last nine games.
Hossa, who has 11 goals, tied it at 2 with the Blackhawks' fourth short-handed goal of the season.
"I was thinking pass first, but the defenseman took the pass away," Hossa said. "I had an open window to shoot at. I was getting a lot of shots tonight and it felt good."
He added a power-play goal 1:17 into the final period.
Perron scored 6:51 into the game on his third shift. He was sidelined by concussion-like symptoms after a high hit by San Jose's Joe Thornton on Nov. 4, 2010.
"It's a good feeling to score a goal anytime in the NHL," Perron said. "And much more so when you miss that amount of time."
St. Louis coach Ken Hitchcock was impressed with Perron.
"He's really going to help us out," Hitchcock said. "About four more just like him and we'll be fine."
Perron took 25 shifts and played 19:05.
St. Louis fell to 8-2-3 under Hitchcock.
The game was the second of six meetings between the teams this season. ... St. Louis has at least one point in 11 of its last 13 games. ... The Blues beat Chicago 3-0 on Nov. 8 in Hitchcock's first game in St. Louis. The Blues have 19 of a possible 26 points under Hitchcock. ... Chicago improved to 8-6-1 on the road.