Freeman completed 25-for-46 passes for 248 yards, three touchdowns and two interceptions for the Bucs (6-4), won their fourth straight.
The Panthers (2-8) lost for the seventh time in eight games as Cam Newton was held to 252 passing yards and a score on 16-for-29 efficiency.
Brandon LaFell made five catches for 93 yards and a score for Carolina.
Teacher apologizes for showing sexual image of herself in class
Dennis Rodman pledges to end trips to North Korea