a) Can you double check the theory/observation... carefully load a stream in XBMC (remembering exactly what you click on) using WiFi, switch to a wired connection then watch the same stream again. Live streams would probably be a better test, just in case a static video file is cached and skews results
b) Only thing I can think of right now is that the buffering strategy defined causes XBMC to hit the nail on the head with a slower connection, but when the buffer runs out on a faster connection, it somehow hasn't acted in advance enough to be ready to seemlessly playback the video further.
Let us know the results to a) when you get a spare moment and we'll take it from there.