The Bears (21-7, 9-6 Big 12) shot 14 of 26 from 3-point range, becoming the first team other than Kansas to win in Ames since 2012.
Baylor hit five straight 3s late in the second half, the last two by Prince, to take a 72-66 lead with 4:41 left. The Bears held Iowa State to just four points in the final 6:26.
Jameel McKay had a career-high 21 points for the Cyclones (20-7, 10-5), who are now a game behind the first-place Jayhawks in the Big 12 with just three games to play.
Iowa State and Baylor staged one of the best games in the Big 12 this season back on Jan. 14. The Bears squandered a 28-11 lead, but rallied for a 74-73 win on Kenny Chery's jumper with four seconds left.
The rematch was in doubt until the Bears got rolling from beyond the arc.
Bryce Dejean-Jones gave the Cyclones a 50-48 lead by leaping over a foot above the rim for a spectacular put-back dunk, and Niang found McKay for an alley-oop dunk pushed the edge to 60-54 with 8:28 left.
But Baylor held Iowa State to just four points in the final 6:26, and its hot streak helped the Bears sweep the Cyclones for the first time.
Chery had 15 points and seven assists for the Bears.
Georges Niang had 14 points and Matt Thomas scored 13 for Iowa State.
Iowa State: This was the first loss to Baylor at home in 13 tries for the Cyclones...Dustin Hogue committed three turnovers in the first four minutes of the second half.
Baylor: The Bears were 7 of 13 on 3s in the first half but just 3 of 7 from the line. They led 40-37 at halftime...Coach Scott Drew used all of his second-half timeouts in less than 12 minutes.
Iowa State travels to Kansas State on Saturday.
Baylor hosts West Virginia on Saturday.
Follow Luke Meredith on Twitter: www.twitter.com/LukeMeredithAP