Henry had 28 carries for 87 yards, with one running touchdown and one throwing touchdown when the Titans deceived the Packers' defense in the third quarter to open up a 20-9 lead. He also had two receptions for 45 yards.
The Titans running back became the first player since 1983 with 20 or more carries, two or more completions, a rushing TD and a passing TD in a game.
Titans quarterback Ryan Tannehill was exceptional against the blitz and made 22 of 27 passes for 333 yards with two touchdowns and one interception.
Tennessee improved to 7-3, having won seven of their past eight games, with their only loss in that run coming in overtime to the Kansas City Chiefs.
Aaron Rodgers threw two TD passes, both to breakout rookie Christian Watson, on 24-of-39 passing for 227 yards for the 4-7 Packers, who had snapped a five-game skid with last week's 31-28 overtime win over the Dallas Cowboys.
Tannehill passed to Treylon Burks for a 37-yard gain, before linking up with Dontrell Hilliard for a TD on a methodical opening drive. Burks finished the game with seven receptions for 111 yards.
Rodgers caught the Titans defence off guard for Watson's TD to make it 7-6, while the Packers defence thwarted Henry on a fourth-and-one midway after an 18-play drive through the second quarter, but he would not be denied late in the half, opening up a 14-6 halftime lead.
Henry gained 42 yards on a marauding catch-and-run, before flipping a pass over the Packers defence for Austin Hooper to score.
After Rodgers found Watson in the same corner again, Hooper added another TD from a 16-yard Tannehill dime early in the fourth.