1) using tvheadend, no problem. that’s how I use geexbox (a dedicated server to build geexbox, record tv, nfs shares, etc and a small pc connected to tv using geexbox) Any hardware supported by linuxtv should work.
2) you can control xbmc using a vitual remote , a rc remote, or it exists a specific application for android (see documentation)
Just to throw my .02 in, the remote i have on my iPod (cringes and wishes for android device again) works just fine and dandy. makes easy to navigate from the couch, and i havent found a limitation yet of it.