Both touchdowns were scored in the first quarter, to give USF a 14-7 lead.
Matt Grothe threw a 37-yard touchdown pass to Amarri Jackson and Delbert Alvarado kicked a 38-yard field goal in the second quarter as USF built its lead to 24-7 at the half.
There was no scoring in the second half, when the contest was dominated by defense.
Williams gained 67 yards on 17 carries; Grothe threw for 81 yards; while Pat Julmiste threw for 49 yards and added 53 yards rushing for the Bulls (9-4), who won its first bowl game under Coach Jim Leavitt.
James Pinkney threw for one touchdown; and Bobby Good made five catches for 116 yards for the Pirates (7-6), who had won five of their previous six games.