How is your kernel-mode code reporting to userspace? 1.5ms is not very fast; any garden variety serial port can generate interrupts faster than that. Are you using the interrupt as a pacing mechanism, or is there data provided along with the interrupt? How are you able to ascertain that the kernel is not missing interrupts?
The kernels used in all distributions are essentially the same. As of this writing, the latest is version 2.6.27. If yours is very old, perhaps you should consider upgrading, if you think the kernel is at fault.