I’ll try to answer, but I feel like I’m not being any more helpful than the existing documentation about Recorder and Long-Term Statistics.
First of all, no, it’s not possible to fine-tune the duration individual entity data are kept in Recorder. You can exclude entities from being kept altogether. And as you’ve found, there are ways to include and exclude whole groups of entities. But otherwise, every state change is kept for purge_keep_days, no more, no less.
For long-term statistics, this is from the Home Assistant Glossary:
Home Assistant saves long-term statistics for a sensor if the entity has a state_class of measurement, total, or total_increasing. For short-term statistics, a snapshot is taken every 5 minutes. For long-term statistics, an hourly aggregate is stored of the short-term statistics. Short-term statistics are automatically purged after a predefined period (default is 10 days). Long-term statistics are never purged.
I think it would be good to spend the time now getting this right. Exclude “chatty” entities you don’t really want spamming your database. Make sure the entities you care about keeping long-term data on are in a state_class which is put in long-term statistics.
This thread is getting a bit dated now, and some database structures may have changed, but it’s great reading for understanding how Recorder works, and how to tune it for your needs.