Jimmy Garoppolo leads 49ers victory at Chicago, taking some heat off Kyle Shanahan

The San Francisco 49ers turned in perhaps their best offensive performance since Week 1, beating the Chicago Bears at Soldier Field, 33-22, on Sunday.

Jimmy Garoppolo had his best game in forever for the 49ers. The Chicago-area native returned home to throw for 322 yards and run for two touchdowns — his first two-TD game in the NFL.

Amid questions about his standing as the team's starter, and also as the heat had been turned up on 49ers head coach Kyle Shanahan, Garoppolo led the 49ers on four second-half scoring drives to pull away. Backup QB Trey Lance was deemed healthy and was active for the game but didn't play.

Replacement 49ers kicker Joey Slye was 4 of 5 on field-goal tries, and rookie running back Elijah Mitchell ran 18 times for 137 yards and a touchdown. Deebo Samuel also added 171 receiving yards in the win.

The 49ers improve to 3-4, ending a four-game skid. The Bears — playing without head coach Matt Nagy, who tested positive for COVID-19 this past week — lost their third straight to fall to 3-5.

CHICAGO, ILLINOIS - OCTOBER 31: Jimmy Garoppolo #10 of the San Francisco 49ers celebrates after scoring a touchdown in the fourth quarter against the Chicago Bears at Soldier Field on October 31, 2021 in Chicago, Illinois. (Photo by Jonathan Daniel/Getty Images)
The Niners' Jimmy Garoppolo celebrates after scoring a touchdown in the fourth quarter against the Bears. (Jonathan Daniel/Getty Images)

The Bears led 16-9 in the third quarter after Cairo Santos' third field goal of the game — and his 37th straight make — but the 49ers retook the lead when Mitchell carried half the Bears' defense into the end zone from 5 yards out.

Bears QB Justin Fields struck back. He converted an incredible fourth-and-1 play with his legs, shaking at least six 49ers and reversing fields to convert and score from 22 yards out. It was Fields' best rushing game of the season by far, totaling 103 yards on 103 carries.

Santos missed the ensuing extra point, and the Bears swam upstream the rest of the way. Their defense, missing Khalil Mack and others, had few answers for the 49ers, who didn't punt all game and had a chance to score on every single possession. The only miss was Slye's failed field-goal try on San Francisco's opening drive.

The 49ers poured it on in the second half, scoring three straight touchdowns and a field goal against a gassed Chicago defense that didn't force a punt or turnover all game.

Fields also completed 19 of 27 passes for 175 yards, sidearming a pretty TD pass to Jesse James to give the Bears a first-half lead but also throwing a late interception to seal the game.

Did this game do anything for the futures of Shanahan or Nagy? It's hard to say, and though the loss is credited to Nagy, despite special teams coordinator Chris Tabor handled head-coaching duties for the game.

But it was a crucial win for a 49ers team that was slipping from contention but now is a game away from a .500 record.