You could do it as Germany does it and have a first past the post for local representation but then scale up the size of the parliament to actually represent the amount of relative votes per party.
Tbf right now that makes our parliament the 2nd biggest in the word which is fucking expensive but at least you have representation and actually having your vote matter in region that's deeply one-sided against for party
And it's not just the salary for the representatives but they all also have a state-paid office and staff - so yeah...
There have recently been reforms to make the districts bigger to get less direct representation in total resulting in a smaller size overall.
I'd expect that especially with a 2-party system it's not as bad as you calculated though since the worst problem here is that a local party from Bavaria is winning almost all the direct representation spots there but gets way less votes in total in Germany which results to every other party sending way more people than they would need