The Spartans had forged a 58-58 tie on Adreian Payne's 3-pointer from the top of key with 12 seconds left and were looking to send the game into overtime with a stop on the ensuing possession.
But Jackson ran the length of the court and pulled up for the key basket with time ticking down.
Travis Trice missed a desperation shot from halfcourt, and Wisconsin (19-5, 6-5 Big Ten) hung on to snap a five-game losing streak against Michigan State.
Nigel Hayes led the Badgers with 14 points in a reserve role.
Josh Gasser and Sam Dekker contributed 11 each.
The Spartans (20-4, 9-2) were paced by Payne with 24 points.