The problem is obviously due to a way of using direct (hard) formatting which should be considered a misuse. As soon as you shift to formatting done exclusively using named cell styles the problem will vanish.
To transform sheets with lots of hard cell formats into style-formatted sheets you need first to specify and to actually define the wanted styles in a purposeful hierarchy. Then you need to apply these styles to the respective cell ranges based on the visual judgement and/or on specified rules. Finally you need to clear direct formatting (Ctrl+M) for the respective ranges. Please note that LibO also will clear ConditionalFormatting for these ranges then. You need to preserve and reinstate it if wanted.
Don’t miss to define your style hierarchies first in the templates you use, especially those for future use. Already existing documents based on these templates will import the new styles when opened next time if you ‘Yes’ the respective prompt.
If you want to get some automatized help with your task you will need “introspective functions” returning values for cell attributes. There are no standard functions for the purpose. “Macro” functions of the kind you can find here e.g. A transitional step making the formerly invisible differences eye-catching can be CF based on introspective functions.
Concerning cells with text content where pieces of the text are formatted differently, the above does not apply.