Is there a Craft recommended approach to this issue please?
The simplest solution would be to update to Craft 3.5+
Template cache data went from being stored in the database to the file system, so this won't be an issue for you anymore.
Craft uses a fairly typical relational model, where most1 custom fields have a single column in the content table, set to an appropriate column type chosen by the field type. Unlike EAV, which crams all data into a fixed schema, Craft’s schema will change over time based on the custom fields you’ve configured.
There are both performance and storage benefits ...