When you update a template in any part of the hierarchy, have the option to update all existing instances that use that template.
Any concerns about data safety could be handled by having any fields that are removed simply be hidden from the list view, but still be accessible when clicking into the item. Therefore you could choose to reintroduce the hidden field and still have all the data there, because the data still exists.