Question 2: Doesn't the Sun take the longest arc across the sky on the day it passes through zenith?
Answer: There are two effects. (In the remaining description, I will be referring to an observer in the northern latitude.) As the Sun moves northward from 0 degrees declination, the radius of the circle that it travels is smaller. In other words, the total length of the 20 degree declination circle is smaller than the 10 degree declination circle which is smaller than the 0 degree declination circle (the celestial equator). But at the same time, the fraction of the declination circle that is visible above the horizon is greater. At some combination of declination, these two effects result in the maximum length of the declination circle above the horizon. If the declination is north or south of that optimized solution, the length of the arc is smaller.
Skipping the calculations for now and going right to the solution, here is a graph showing the length of the arc for various latitudes and declinations. This graph plots the results relative to the length of the arc along the celestial equator which is 180 degrees regardless of your latitude (ignoring refraction and the Sun's diameter).
If your latitude is between 0 and 23.4 degrees, the longest arc is before the Sun reaches the zenith. For example, an observer at 20 degrees latitude witnesses the longest arc when the Sun is at about 13 degrees declination which is 7 degrees before the Sun reaches the zenith. If you live north of 23.4 degrees, the Sun is never overhead. North of 30 degrees, the longest arc is when the Sun is highest in the sky.
I can go into more details and the math, but I do not know if I should do it here or maybe in a new question.