The world number one, playing in her first tournament since winning her third grand slam title at the US Open, was made to dig very deep by Russia's Ekaterina Alexandrova in the semi-finals.
But, helped by a run of 13 points in a row during the deciding set, Swiatek battled to a 7-6 (5) 2-6 6-4 victory, converting her fourth match point.
The Pole said in her on-court interview: "It was super tough. We can feel that it's the end of the season. The second set I lacked energy for sure. I'm pretty happy that I could improve my level in the third set."
Swiatek will now bid to extend her phenomenal record in finals having won her last 10 without dropping a set, including all seven this year.
Her opponent will be home favourite Barbora Krejcikova, who has found her best form again after an injury-hit season and is bidding for a second straight WTA Tour title.
The Czech, who lifted the trophy in Tallinn last week, came from a set down to defeat Wimbledon champion Elena Rybakina 3-6 7-6 (4) 6-4.
At the Jasmin Open in Tunisia, the final will be between third seed Alize Cornet and fifth seed Elise Mertens.