Bernoulli's principle is the major cause of prop walk. The water displaced by the hull near the surface is moving faster than the water further below the hull. Thus, a right hand propeller grabs "more water" at the top of rotation and propels it downward and to the port side.
It's hard to wrap my head around this before finishing my coffee, and I'm not an expert at anything, but I think this might be backwards. Bernoulli's principle states that an increase in the speed of the fluid occurs simultaneously with a decrease in pressure or a decrease in the fluid's potential energy. Thus the propeller should be more effective at the bottom to the rotation (due to higher pressure/potential energy) propelling the water to the port side (rather then "grabbing" it at the top and throwing it all the way around to port.)
I am usually only concerned with this at very slow speeds when docking and I don't think Bernoulli's principle applies here. I think about it in terms of how much water the different parts of the prop have to push against. For example, in the limit, if I raise the engine until the top part of the prop is out of the water, only the bottom will be biting and clearly pushing the stern like a paddle wheel. I'm suggesting anyone do this - but it may be helpful to think about it in this way. I.e, when the boat is trim is up high, there should be more prop walk which can be helpful at times when maneuvering at the dock, especially with twins.
This paper explains describes the effect only in terms of shaft angle - I'm not sure I can wrap my head around this either this but it is consistent with the suggestions to raise the trim to minimize walk when underway. This was recommended above by multiple posters. It is not consistent with my slow-speed paddle-wheel argument at the dock.
http://www.cruisingschool.co.uk/icc/prop%20walk.pdf
Like I said, I am not an expert and would be happy to be corrected on any of this.
Cheers,
-Scott