Freeman was 18-of-24 for 241 yards, and rookie LeGarrette Blount added a rushing touchdown for the Buccaneers (6-3), who rebounded from last week’s loss at Atlanta to win for the third time in their last four games.
Blount finished with 91 yards on 19 carries.
Carolina quarterback Jimmy Clausen started in place of the injured Matt Moore and the rookie out of Notre Dame connected on 16-of-29 tosses for 191 yards. Moore sustained a season-ending torn labrum in his throwing shoulder during last Sunday’s 34-3 shellacking by New Orleans.
Mike Goodson had 100 yards on 23 carries for the Panthers (1-8).
“Offensively, we showed improvement,” said Carolina head coach John Fox. “I thought Jimmy did a good job. I thought Mike Goodson stepped in and did a good job. I thought guys made improvements, but the results weren’t quite what we were looking for.”
John Kasay kicked a 28- and a 48-yard field goal in the third quarter, the latter coming with 1:02 remaining, to trim Carolina’s deficit to 21-16.
The Buccaneers marched into the red zone on their next possession, but were forced to settle for a 32-yard Connor Barth field goal.
Carolina the punted the ball away, and Cadillac Williams sealed the Tampa Bay win by scampering 45 yards up the middle on a third-and-11 draw to the end zone with 2:42 left in regulation. Williams had converted a lengthy third down earlier in the drive with a 16-yard catch-and-run.
Tampa Bay stopped Clausen twice on quarterback sneaks from inside the one-yard line in the waning seconds of the contest.
“Great team effort, but we’ve got to get better (in limiting penalties),” said Tampa Bay head coach Raheem Morris. “That’s the part we have to get better at in the second half of our season. We’re a young football team, but after a while that’s got to stop being an excuse.”
It was an inauspicious start for the Panthers as Goodson fumbled on the game’s opening possession. Tampa Bay safety Sean Jones recovered the ball at the Carolina 47, and the Buccaneers converted the turnover into an eight-yard touchdown catch by rookie wideout Arrelious Benn.
Kasay made a 46-yard field goal to put Carolina on the board with 52 seconds remaining in the first quarter.
Blount then capped an six-play, 87-yard march with a 17-yard touchdown run, giving the Buccaneers a 14-3 lead.
Carolina’s offense was facing its first three-and-out on the ensuing series, but Jason Baker’s punt bounded off Buccaneers cornerback Elbert Mack. Dante Rosario recovered for the Panthers at the Tampa Bay 46. Then, an 18-yard catch by David Gettis on third down set up a two-yard Josh Vaughan TD run .
After the teams traded punts, Freeman finished an eight-play, 65-yard drive by finding Kellen Winslow for a 20-yard touchdown, extending Tampa Bay’s lead to 21-10 with 50 seconds left before halftime.
Winslow caught six passes for 65 yards…Carolina linebacker Nic Harris recorded a game-high 11 tackles…Freeman has won eight of his past 12 starts.