@ale I think I have this resolved now in the latest update. As described above, I iterate through the entire document, find symbols with overrides, and log those overrides as being exempt from removal. I have also solved the issue of nested symbols sometimes being removed, if they are nested into another symbol which has no instances of itself... those are being marked as exempt as well. So basically, the plugin will now only remove symbols that are legitimate loners.
I stumbled across the Automate Sketch - Remove Unused Symbols plugin, which had some of the override magic, but didn't account for nested symbols which I baked into the functionality as explained above.
The end result is probably not as elegant or optimized as it could be (although I have made a few optimization and abstraction passes), but in my testing it seems quite bulletproof.