World number three Sabalenka, seeking her 15th career WTA crown, was ousted by the 26-year-old Czech 6-4, 3-6, 6-3 in the hardcourt tuneup for the US Open, which begins on August 26.
"A lot of things happened with the rain delay," Bouzkova said.
"Happy I was able to start really well in the third set and then just close it out. Playing quite well," she added. "I'm very pleased."
After Sabalenka, of Belarus, smacked a backhand winner to break for a 2-1 lead in the final set, a storm arrived and forced the extended stoppage.
Three breaks of serve followed when play resumed before Bouzkova held for a 4-3 edge. Inconsistent Sabalenka netted a forehand to surrender a break in the eighth game.
Bouzkova, ranked 43rd, held at love on a netted Sabalenka forehand to advance after two hours and 12 minutes on the court.
"I was just telling myself to be aggressive from the start and just be really active on my feet, have a quick start and see how I can play after that.
"I returned pretty well, especially in the third set. I was able to neutralize her serve pretty well. That kept me alive. I felt like I served pretty well, too, in the end."
Sabalenka, who withdrew from Wimbledon with a right shoulder injury, lost last year's US Open final to Coco Gauff.
'Very emotional' Badosa
Bouzkova, whose only WTA title came at Prague in 2022, will play for the crown Sunday against Spain's Paula Badosa, who beat American Caroline Dolehide 6-3, 6-3.
Badosa, the former world number two, missed the last six months of 2023 with a back injury but has reached her first final since Sydney in January 2022.
"She's aggressive," Bouzkova said. "She serves very big. I'll just try to play my game again. Just keep the momentum going. I think that will be important."
Badosa is 2-0 against Bouzkova, winning in 2017 at Las Vegas and 2022 in Miami without dropping a set.
"Bouzkova is a tough one," Badosa said. "She has been there plenty of years so I expect that's going to be a battle."
Badosa has won all three of her previous WTA finals, taking titles at Belgrade and Indian Wells in 2021 and Sydney in 2022.
She fell to 140th in the rankings due to her injury last year but has ensured a return to the top 50 on Monday with her Washington run.
"I value this final more than any other final I did before because I've been struggling a lot," Badosa said.
"I have to be honest, I felt I was never going to be in a final again. For me, it's very emotional."
Badosa eliminated Dolehide after 81 minutes when the American swatted a forehand long.
"It's really emotional to be back in a final and to be fighting for titles," Badosa said.
"There was moments that was coming to my mind -- am I going to be able to get back to the level I want to?
"That was tough for me because my back wasn't responding. Finally it is," she said. "I'm feeling now an athlete again."
On the men's side, Italian 10th seed Flavio Cobolli ousted US second seed Ben Shelton 4-6, 7-5, 6-3.
The 22-year-old from Florence will play in his first ATP final on Sunday against US fourth seed Sebastian Korda, who eliminated fifth-seeded hometown hero Frances Tiafoe 6-4, 6-4.
Korda won his only ATP title at Parma in 2021.