SANTA CLARA – The new-and-improved 49ers had their biggest test on Sunday.
But not even the Jacksonville Jaguars’ top-ranked defense could slow down Jimmy Garoppolo and his energized teammates.
The 49ers stretched their win streak to four games – their longest sustained success since the 2013 season – with a 44-33 victory over the AFC South champions in their home finale at Levi’s Stadium.
The Jaguars entered the game allowing just 168.9 yards passing per game. But Garoppolo took advantage of Kyle Shanahan’s masterful game plan to complete 21 of 30 pass attempts for 242 yards with two touchdowns and one interception for a passer rating of 102.4.
Providing even more optimism for the future, the 49ers (5-10) got huge contributions from a number of rookies while sending the Jaguars (10-5) to just their second loss in the past nine games.
Undrafted rookie running back Matt Breida put the game out of reach with a 30-yard touchdown run with 1:24 left after the Jaguars clawed back into the game. Breida gained 74 yards on 11 rushing attempts.
Tight end George Kittle and slot receiver Trent Taylor caught touchdown passes. Reuben Foster and Solomon Thomas were among the 49ers’ top tacklers, and cornerback Ahkello Witherspoon helped put the game away with a fourth-quarter interception.
Running back Carlos Hyde helped the 49ers cash in after Witherspoon’s second interception to score on a 6-yard turn for a 37-19 lead in the fourth quarter.
Garoppolo showed a little bit of everything in the 49ers’ home finale, including a 1-yard touchdown run to give San Francisco an early lead. The 49ers squandered a 16-point lead and briefly fell behind in the third quarter before rallying for the victory.
Garoppolo threw sidearm just before Jacksonville cornerback Aaron Colvin got to him. He squeezed the pass into Taylor for a 5-yard touchdown pass to give the 49ers a 30-19 lead early in the fourth quarter.
Making his fourth start since the trade that brought him to the 49ers from the New England Patriots, Garoppolo got off to a hot start. But his first half ended on a sour note. His interception in the end zone provided a big play to enable the Jaguars to get back into the game.
Garoppolo’s pass intended for Kendrick Bourne fluttered as he was hit by Jaguars pass-rushers Calais Campbell and Yannick Ngakoue. Safety Barry Church made the interception in the end zone.
The Jaguars cashed in to score just before the end of the half, as Blake Bortles’ pass intended for Leonard Fournette was deflected into the hands of receiver Jaelen Strong for a 5-yard touchdown.
The 49ers squandered their lead at the beginning of the second half, but came back after K’Waun Williams’ one-handed interception and 27-yard return set up the offense at the Jacksonville 26-yard line.
Five plays later, Garoppolo squeezed a pass into Kittle at the goal line between two Jaguars defenders for an 8-yard touchdown to give the 49ers a 23-10 lead with 6:46 remaining in the third quarter.
Bortles, who entered the game as the hottest quarterback in the league during December, completed 32 of 50 passes for 382 yards with two touchdowns and three interceptions. His passer rating was 75.6.
JOHNSON’S UP-AND-DOWN DAY
Cornerback Dontae Johnson provided a big play in the first half with a 50-yard interception return for a touchdown. The play looked as if it would give the 49ers a 17-0 lead in the second quarter.
But Robbie Gould’s extra-point attempt was blocked, and Aaron Colvin returned it for two points going the other way. The turn of events meant the 49ers carried a 16-2 lead after the play.
Then, things went south for Johnson, was called for pass interference (23 yards) and illegal use of hands (5 yards) during a three-play stretch. Johnson was also in coverage on a 19-yard pass to Dede Westbrook at the 1-yard line to set up the Jaguars’ first touchdown of the game.
When the 49ers’ defense went back onto the field later in the first half, newcomer Tyvis Powell replaced Johnson at right cornerback. Johnson has been called for a team-worst 12 penalties this season, not including three penalties against him that were declined.
Johnson returned to the field after sitting out a couple of possessions.
Before starting nose tackle Earl Mitchell played a down of defense, he trotted onto the field with the 49ers’ offense.
The 49ers deployed Mitchell, a 310-pounder, in the backfield for a first-and-goal play at the Jacksonville 1-yard line. Garoppolo got a nice shove in the back from Mitchell on a quarterback sneak for a touchdown.
Garoppolo’s 1-yard run – with assistance from Mitchell – was the culmination of the 49ers’ first touchdown on an opening drive this season.
THIS ‘N’ THAT
-- Defensive lineman Aaron Lynch was inactive for the game after being among the 46 players to suit up the previous two games. Ronald Blair replaced him on the team’s game-day roster. Lynch is scheduled to be a free agent at the end of the season.
-- Fullback Kyle Juszczyk recorded a career-high with 76 yards receiving on five catches. He previous best came two weeks ago when he had 64 yards against the Houston Texans.
-- Linebacker Elijah Lee had a fumble return for a touchdown wiped out when it was ruled Jaguars running back T.J. Yeldon did not catch Bortles’ short pass in the fourth quarter. The play was ruled incomplete, and referee Jeff Triplette announced the ruling stood after Shanahan’s challenge.
-- Fournette rushed for 48 yards on 18 attempts. The Jaguars had just 81 rushing yards. It was the fifth consecutive game the 49ers have held the opposition under 100 yards rushing.
-- The Jaguars got back into the game with a recovered onside kick. Bortles found James O’Shaughnessy for an 11-yard touchdown with 1:50 remaining in regulation. Josh Lambo missed the extra point.