The Bobcats (2-1) built a 37-13 lead on Knights nine-yard run late in the third quarter, but the Bears (1-2) worked their back into the game when MSU kick returner Shaun Johnson retreated into the end zone with a kickoff and downed it, cutting the deficit to 37-27.
MSU got a 34-yard run by Gunnar Brekke to set up another Knight touchdown with 4:04 to play.
The Bears scored with :35 to play, but failed to convert the two-point conversion and couldn't recover their onside kick.
Prukop ran for 90 yards on 18 carries and was 19 of 27 for 289 yards passing.
The Bobcats went over 500 yards for the second straight game.