They have added new XML templates and Lua mixins for the dropdown menus, but I have not been able to test if using those new templates avoid the taint yet.
As for your original question, I have had the same issue with a custom lib I'm doing to share between my projects and I have not been able to find a solution either. One thing I had in mind at some point was that if you are using a
packager for your add-on you are able to insert tags that would be automatically replaced by the version number. I was thinking that having XML names as "AddonName@project-version@_WidgetName" would make different names for different versions of the lib. But I have not tried that yet and it sounds like a hacky solution :S