Unfortunately, Flex Daily will always start watering as if all zones were going to run. In your case, you have 14 zones with 14 hours of total watering time, so when you set end by sunset, it starts watering at sunset - 14 hours (which in your case is 4pm), even if only 1 zone is running.
This is not going to be fixed any time soon because according to Rachio, it will require a major overhaul of the code. And even if they did fix it, you might still end up with days where all zones need to water, and end up starting at 4pm anyway. I have suggested a different schedule where we could specify a start and end time, and Rachio would water the zones that require watering the most, and postpone the others to the next day.
In the meantime, there might be some other solutions to consider.
Change the schedule to start at a certain time instead of end at sunset. This gives you better control, and for the most part, not all zones will be running at once. And split the schedule to 2 schedules, odd and even days for example, so each schedule is 7 hours long. If you start watering at 1am, then worst case scenario, if all zones in that schedule are running, will be to finish by 8am.
Next look at how you can speed up watering. If you have enough water flow for 2 zones, maybe you can combine two zones (you can hook two solenoid to same zone in Rachio). So if you can find zones that share same characteristcs (slope, sun exposure), you can try this approach. Also, and probably the one that might require more effort, is to analyze the sprinkler heads you have to see if there are other options to increase precipitation rate.