DOS does give you a certain limited functionality with the CTTY command. Basically, you can do CTTY COM1: and DOS will read from the comm port for input.
But there are gotchas.
The first one is that it's only good with programs that use DOS functions (e.g. 1, 6 and 10) for input. Programs using the BIOS calls won't work--and there are a lot of those.
The second is that no scan codes are returned and you don't get cursor or function key control. DOS expects a dumb ASCII TTY-type input.
But if you really want to take a PC keyboard and have it output ASCII codes over a serial link, I'm sure that I've seen a PIC project to do just that.
You could also write your own TSR/driver to simulate a PC keyboard from ASCII input and patch the INT 16H vector to your BIOS.
Just tossing some ideas out....