Brandon Jennings, who scored 26 points, took an inbounds pass from Monta Ellis and made a tough fadeaway shot with 47.8 seconds left, but Jose Calderon, who tied his season high with 23 points, came back with a running layup for Detroit that tied it at 100.
After a timeout, the Pistons worked the ball to Villanueva, who got it at the top of the key and swished a 3 with 9.7 seconds left. On the Bucks’ next possession, Jennings fired up a 31-foot 3-point attempt with 3.2 seconds left. Stuckey's two free throws with 1.6 seconds remaining were the final margin.
Stuckey finished with 19 points, Villanueva 18, and Greg Monroe 14 to lead the Pistons to their third win in four meetings against the Bucks this season. Villanueva also had a season-high 13 rebounds.
Ersan Ilyasova scored 15 points and grabbed 10 rebounds, Samuel Dalembert had 14 points, and 12 rebounds for Milwaukee.
It was the second game Detroit was without rookie big man Andre Drummond, who is expected to miss four to six weeks because of a stress fracture in his back suffered last week against Los Angeles.
Monroe, starting for Drummond, was not as dominating as he was in Detroit's 119-109 victory over the short-handed San Antonio Spurs on Friday night when he had 26 points and 16 rebounds.