I would think LOD levels of some sort would help with this. I believe you could use a very low poly LOD for medium distance and perhaps even a billboard far off.
I’ve created a Shared Hierarchical Instanced Static Mesh Component (SHISMC). I can use this the same way as a regular Static Mesh Component, but internally all SHISMCs in all the actors are working together, so if I have 10 different actors with the same Mesh in the SHISMC then internally this is only one Hierarchical Instanced Static Mesh Component (HISMC).
I have one “InstanceContainer” Actor in the level which holds all the HISMCs (one for each mesh used by SHISMCs) and adds new ones if any actor uses a SHISMC with a mesh which was not used before.
Now I can have 500 tree actors and all have their own SHISMC, all can grow individually, all can create seedlings etc, but internally this is only one HISMC. I get a lot better fps with this and additionally I have nice smooth LOD transitions since HISMCs are optimized for foliage.