My personal theory on why Kawauchi's won is that his particular running talent could maintain a higher exertion level for 2:15 than the other runners could maintain for 2:15. Kawauchi's amazing durability shows that he is more of a distance hound than the other world class marathoners. He may not be able to run fast enough to finish a marathon in 2:05. But if wind slow the pace down enough in a marathon so that the winning time will be 2:15, he will be the one still running strong at 2:15.
I think exertion-level-over-time is the biggest differentiator between different runners. For example, Zersenay Tadese is an amazing runner for a range of exertion times from 20 minutes to 60 minutes. Any race distance that would be finished between those time ranges, had Tedese as a possible winner. Other runners have different time ranges. Milers have a talent between 3 minutes 10 minutes. Of course runners can race distances outside of their optimal time range, but their competitive advantage tapers off. And of course, some runners have a much larger range than others (or at least can adapt their training to a larger time range, while other runners have trouble adapting, for example, Tadese in the marathon).
So, Kawauchi is just naturally a more endurance oriented marathoner whose optimal time range is just slightly above that for most of the other worlds class marathers. The head wind in Boston was mainly responsible for turning it into a slow race that would take longer to finish, so this played to Kawauchi's talent.
I don't think the cold is a factor. The body generates tons of heat when running MP pace. Staying warm is not a problem assuming you dress appropriately.