Why the earliest sunrise isn’t on the longest day.
Sunrise and sunset sit symmetrically around solar noon (the sun’s highest point), but solar noon drifts by about ±15 min on the clock over the year — the
equation of time, caused by Earth’s elliptical orbit and its axial tilt.
Near the solstices day length barely changes while solar noon keeps getting later, so the drift wins: at mid-northern latitudes the earliest sunrise comes about a week before the June solstice and the latest sunset about a week after, while the earliest sunset is about two weeks before the December solstice and the latest sunrise about two weeks after (the orbit adds to the effect in December).
The dots on the sunrise/sunset chart mark these dates.
More: Equation of time (Wikipedia) · USNO: The equation of time · NOAA solar calculation details