Jimmy Garoppolo converted a pair of conversions on third-and-16 to set up Robbie Gould's game-winning 33-yard field goal with no time left and the San Francisco 49ers eliminated the defending NFC champion Los Angeles Rams from playoff contention with a 34-31 victory Saturday night.
Garoppolo made up for a mostly pedestrian game for the 49ers (12-3) by delivering two big throws on the final drive after taking his fifth and sixth sacks.
He found Kendrick Bourne on an 18-yard pass over the middle to convert the first long third down and then hit Emmanuel Sanders behind a blown coverage for 46 yards to set up the winning kick.
The Niners then ran out on the field to celebrate while the Rams (8-7) were eliminated with the loss. Minnesota became the fifth team to clinch a berth in the NFC with Dallas and Philadelphia battling for the final spot.
The victory kept the Niners in control in the race for the NFC's top seed and home-field advantage throughout. They still need to win next week at Seattle to win the NFC West, otherwise they will be relegated to wild-card status.
Garoppolo finished 16 for 27 for 248 yards with one touchdown and two interceptions.
Jared Goff connected on a 22-yard TD pass to Cooper Kupp in the third quarter to put the Rams ahead 28-24. The defense had throttled the Niners, holding them to four punts, one interception and only two first downs in the second half before San Francisco took over at the 9 midway through the fourth quarter.
Garoppolo hit Kittle on a 36-yard pass to start the drive and then connected with Ross Dwelley on a 25-yarder that also featured a personal foul on Eric Weddle. Three plays later, Garoppolo scrambled on third down to give Kittle time to work free and then found him in the front of the end zone for the touchdown that made it 31-28.
Goff then responded and drove the Rams to a tying 52-yard field goal with 2:30 to play after Marcell Harris dropped a potential interception for San Francisco.
The offenses controlled the game early with Goff throwing a 10-yard TD pass to Brandin Cooks on the opening drive and Todd Gurley scoring on two short runs to stake the Rams to a 21-10 lead.
But Raheem Mostert answered Gurley's second score with a TD run of his own. The defenses then buckled down starting when Fred Warner intercepted a swing pass from Goff in the closing minute of the first half and returned it 46 yards for a score that put San Francisco up 24-21 at the half.
The Niners defense then held firm after Garoppolo's second interception set up the Rams in prime position to start the second half. But an intentional grounding penalty led to a 52-yard missed field goal by Greg Zuerlein.
Mostert scored on a 16-yard run in the second quarter to give him a rushing touchdown in five straight games. He's the first 49ers player to do that since Derek Loville had a six-game streak in 1995. The only other San Francisco players to do that are Joe Perry (seven games in 1953-54) and Hugh McElhenny (five in 1954).
Rams: Jalen Ramsey left with a knee injury in the first half and was initially listed as doubtful to return but came back the following series. ... LB Kenny Young (ankle) and RB Darrell Henderson (ankle) also left with injuries.
49ers: S Tarvarius Moore left the game with a concussion.
Rams: Host Arizona on Sunday.
49ers: Visit Seattle on Sunday.