Garoppolo's five-yard touchdown pass to tight end Garrett Celek capped a 17-play, 85-yard drive that took 8:36 off the clock, and made the score 13-3.
Garoppolo was 31-of-43 for 381 yards, tossing one touchdown and committing no turnovers.
Titans quarterback Marcus Mariota was solid, completing 23 of 33 passes for 241 yards with two touchdowns and no interceptions. Celek later had a 41-yard catch. Gould hit a 48-yarder late in the first and then kicked one from 28 yard just before halftime.
The loss was the second in a row for Tennessee (8-6) and dropped the Titans into a tie with Buffalo (8-6) and Baltimore (8-6) for the two AFC wild-card positions. Gould's third field goal of the half made it 16-3 with 1:37 left before halftime. Now the 49ers are 4-10.
Power outages at Atlanta's busy airport grounding some flights
At least some flights at Atlanta's busy airport have been grounded due to a power outage. The outage is causing flight delays, according to the Atlanta Journal-Constitution.
Offensive guard Laken Tomlinson saved the game for the 49ers when he recovered in the end zone, and even though the score was negated by an offensive pass-interference penalty, San Francisco retained possession, allowing Gould to get a shot at the go-ahead field goal.
The Titans opened the second half with a long drive and a 31 yard Ryan Succop field goal to make it a 16-13 game.
Garoppolo led the 49ers to points on all four of their first-half possessions - field goal, field goal, touchdown, field goal - for a 16-3 lead. Then Jimmy Garoppolo became their starting quarterback.
Mariota put together a lovely 79 yard drive to close out the half though and when he hit Walker for a four yard TD the Titans trailed only 16-10 at the half. The 49ers had to use a timeout just two plays into the game because of the problem.