Eliminating single points of failure has a simple solution.
Keep your IPIP mesh with a higher route metric and add P2P links via another
provider and gateway with lower route metrics, managed by a routing
protocol.
e.g. I have the classic mesh up via a lower speed provider, and a L2TP
tunnel to the german hamnet via a high speed interface, announcing my
presence via BGP on that VPN and getting their routes also via BGP.
If the L2TP tunnel fails, the BGP routes will disappear and the old mesh
network will kick in providing the needed redundancy (another provider,
another gateway).
BGP is not necessary needed, any routing protocol will do, e.g. OSPF or RIP.
Just as simple as that. No need to drop the mesh, just add VPNs to it.
And from the point of view of your partner subnet, you are also multihomed.