It doesn't work that way in practice. I've been to more than one enterprise where an in-house developed application was no longer maintained, original developers were not available, and no one knew how the application even worked. There are very high risks in in-house developed applications, particularly if they are not vital for the enterprise (harder to have resources to maintain/enhance). Risk of SaaS provider going out of business or raising prices is no higher than traditional on-premise enterprise vendors (one can argue it's a lot lower).
In short, there are risks in all approaches and they need to be managed. Good application architecture help manage those risks regardless of which route is chosen.