I arrived at a very similar solution to yours -- I use voip.ms for my primary PSTN presence, receive calls via SIP or adding a cellphone forward to the ring group, and placing calls via DISA. I use the API to bridge SMS sending/receiving to XMPP clients I run on my phones/computers/etc.
I'm mostly happy with the arrangement, although there are a few downsides. DISA calls, and maybe even forward calls, seem to sometimes add a bit of latency that can make conversations awkward. Also the lack of MMS is increasingly becoming a handicap. Not only can you not receive multimedia or group texts, but these days iPhones (at least) seem to be sending long messages as one 160-character SMS message, and the remainder in an MMS message, so I receive truncated texts. Convincing people that I have a crippled phone service with special rules seems like it would be a hard sell when they can communicate with 99% of their peers without such limitations. :(
I hope that voip.ms comes up with some way to support MMS, since it is becoming necessary for normal communication. At times, I've been tempted to look into a Twilio solution, since they claim to support MMS in some way.
Enjoyed this article, breaking up with ones phone definitely is becoming more and more of thought these days, it may become a nessesity in the future. With the privacy and security concerns of this day and age. I like what you have wrote in regards to switching to a SIP related solutions for communication, definitely a step in the right direction. I have mostly tried using secure calling with the SIGNAL app and CsipSimple app. With similar results as you, works OK in 4G and wifi, not so great below 4G. I'm kinda hoping the future switch to 5G and greater adoption of 4G may help mitigate this. As for location based tracking, no real simple solutions(drives me nuts), one possible solution for (though a long shot), is https://www.pubpub.org/pub/direct-radio-introspection , a long read, in the initial development stages but a possible solution to location based tracking. Couple this with Copperhead OS(for hardened security) then use secure calling, may actually have a full secure solution. At least that's what I will testing out going forward. Give me your thoughts...