Well, in answer to question #1, the NYC Marathon used to be run in mid-October, but the Jewish holidays (Yom Kippur and Rosh Hashana) kept interferring.
It also tends to be very warm here in October, and the health of the runners was a consideration as well. (It was very warm here on Sunday for that matter, hench the scarcity of time records.)
The coldest marathon I ever ran in was at Asbury Park many years ago in December. It was up the boardwalk and back, so no hills, but the first leg going north was into a fierce wind. The wind chill was reported at -40 F. Man, it was really cold.
However, the return, with the wind at my back and a nice sun, it actually felt warm, even though the air temp was still below zero.
It was the first one in which I actually ran the second half in less time than the first. And, it was the first time I qualified for Boston, so it was worth it, I think.
The NYC Marathon is run the 1st Sunday in Novermber. It was moved from mid-October and it was hoped that the weather would be cooler for the runners.
Yes, conceivably it could be very cool in early November but it’s highly unlikely that it would get below the 30’s. Temperatures in the 30’s would be very comfortable for the runners once they got going. If anything, the problem has been temperatures that are too high. Several year ago it was about 85 and they ran out of water at some stations. Yesterday was actually too warm for ideal marathon running.
Rain is a bigger impedemant than temperature and rain can happen at any date.
#3 - the Seattle Marathon is the Sunday after Thanksgiving. (Which is right around when the rains and wind are at their worst for the year in this area). The past couple of weekends, I’ve seen people out doing their long runs in hideous weather, getting ready to do their marathons in what will probably be even more hideous weather.
I’ve done it twice, in pouring rain. Never again (strangely, the years I haven’t run, it’s been surprisingly relatively dry. I now don’t run the marathon as a public service.)