Такое ощущение, что только меня такие проблемы и интересуют

Ну проблема разрешилась, я на всякий случай отчитаюсь (может кому пригодится).
В команде считывания с порта ReadFile хитрая переменная под 4-м номером lpNumberOfBytesRead должна быть равна 0 (или nill). Иначе в асинхронном режиме бывают глюки.
Ну ладно. Всем пока.