I get the "Ich sah ihn schwinnen," but the "Ich habe ihn schwimmen sehen" doesn't make any sense to me. I thought sehen was for you (singular) or we/they. Appropriate past tense would be gesehen, wouldn't it?
I can expect a weird behaviour from modal verbs, but why "sehen", "hören", usw?
Ok, I guess there's no point to look for reasons when learning a language...
goes to add more exceptions to his -very long- list