Long shadows have always been a struggle for realtime graphics and games have been cheating to get sunrises/sunsets to look good, making it start higher in the sky, stop casting shadows early, or even putting the sun in the skybox and the directional light casting shadows at different angles.
Beyond that-
Try playing with r.shadow.radiusthreshold
It prevents assets that are small on screen from casting shadows, I see people using r.Shadow.RadiusThreshold values like .01 - .06, but I haven’t played around with it too much, console command documentation will tell you more than I can.