Struff had lost in his previous seven semi-final appearances and it appeared the streak may continue when he quickly fell 3-0 behind against his opponent from Belarus.
However, qualifier Ivashka, who had knocked out No.1 seed Alexander Zverev in the previous round, only managed to win two more games in the remainder of a contest that spanned 87 minutes.
A 6-4 6-1 win for Struff sets up a showdown with Nikoloz Basilashvili, who crushed Casper Ruud 6-1 6-2 to progress through from the other half of the draw.
"I am happy to have reached my first final on home soil in Germany and I will try my best tomorrow," No.7 seed Struff said after the match.
Both Basilashvili and Ruud had completed their quarter-final ties earlier on Sunday (AEST), but it was the former who coped better with a quick return to action on the clay court, easing to victory in 71 minutes.
At the Estoril Open, Cameron Norrie moved a step closer to a first ATP title after withstanding a barrage of aces to overcome the big-serving Marin Cilic in two sets.
Norrie managed to save five of the six break-point opportunities on his own serve as he eventually prevailed 7-6 (7-5) 7-5. His only previous experience of a final on the ATP Tour came back in 2019, when he lost to Tennys Sandgren at the ASB Classic in Auckland.
"[Marin] was serving great and it was really tricky to get his first serve back. I am fortunate to get through and I am just happy to be in my second final," the Briton said.
Albert Ramos-Vinolas is the last player standing in his way, the Spaniard battling back after losing his serve in both sets to beat compatriot Alejandro Davidovich Fokina 6-1 6-4.