I think there are several reasons why cold crashing works, but they all come down to affecting various parts of the equation for drag (in other words, gravity is doing all of the work).
First, cold promotes early flocculation of yeast. Yeast clump together and form flocs as a survival reaction to adverse environmental conditions, with cold being one of those conditions. These flocs are larger than single yeast cells, therefore experiencing more drag in the beer, and sinking to the bottom. Of course, this does not work as well with non- or low-flocculant strains of yeast.
A thirdsecond reason has to do with the slightly greater density of the beer at cold crashing temps. This promotes drag on suspended particles, and allows gravity to act on them, and cause them to settle. I am guessing that most of the particles that settle in this manner (besides floccing yeast) are larger, such as break material and hop debris.
A third reason is that beer is a colloidal substance (a mixture of substances that do not dissolve well with each other). Chill haze is a visible demonstration of this. Cold crashing helps foster reactions between proteins in the beer and tannins/polyphenols that cause chill haze. While chill haze is usually undesirable, having it early in the process allows it to settle out to the bottom of the fermenter, I have read. Because the particles that cause chill haze are on the 0.10 micron scale, I doubt that this is a significant effect.
Edit: typo