I just had a quick look at the x11vnc source. The configure script has a load of things you could turn off I guess. Like you don't need X support at all, file transfer, 24bpp-framebuffer, v4l, macosx-native or the crypto stuff.
So I'd try something like:
./configure --without-filetransfer --without-24bpp --without-x --with-x11vnc --without-system-libvncserver
--without-xinerama --without-xrandr --without-xfixes --without-xdamage --without-xtrap --without-xrecord
--without-macosx-native --without-crypto --without-ssl --without-avahi --host=arm-linux
But it got stuck for me, while building the x11vnc directory, as it is asking for the libvncserver.a shared library. I thought from reading the website that the author had included this in his source himself, i.e. you build x11vnc as a replacement for lib-vncserver. Am I wrong, because I don't see any way around that error. Maybe I'd excluding too many things
Will give it a proper go when I've time.
I'll also think about your reboot line. Putting the send_ir.sh script in the background with the & means it doesn't recieve any keystrokes. You'd need to use something like screen (not on OSD) that'll keep things running in a virtual shell and you can come back to it whenever. Or a little daemon that listens for keystrokes on a certain port and forwards them to vnc? I'm not sure.
Great work by the way, I'm more impressed each time I use it. It's great for annoying your housemates too!
Bed time now!