Gonzales finished with 134 yards and two touchdowns rushing. He threw for 154 yards and two more scores.
The defining play, though, was a block.
Greg Johnson broke free, but Putnam City defender Cody Minor had the angle on Johnson inside the 5.
That's when Gonzales sprinted into the picture, leveling Minor and springing Johnson free to complete the touchdown run.
"I saw Greg break free and knew I had to go make a block," Gonzales said. "Every game this season we've started off slow. We needed to finish one and tonight we did that.
"This is a big boost for us."
Johnson said he saw Gonzales closing the gap and slowed up a bit to give him time to make the block.
"That was a huge play," Johnson said. "We faced adversity and didn't back down. To beat a team like this in a game like that, it's going to help us out a lot."
Johnson finished with 10 carries for 107 yards.
Curtis finished with 33 carries for 204 yards and four touchdowns, but it wasn't enough to keep Putnam City undefeated.
"Our defense made just enough plays," Gonzales said. "They came through when we needed them."
Bryce Freeman capped the win with a 30-yard fumble return for a touchdown with less than two minutes left.