It would help to know exactly what settings everyone is using when doing Handbrake encodes, and what version of Handbrake everyone is using.
OP, are you using HB 0.9.2? The preset for ATV in 0.9.3 is constant quality, not an average bitrate, so I presume you are using the older version. From what I understand, 0.9.3 is faster than previous versions (correct me if I'm wrong though.)
For me, I use 0.9.3, with the new Universal setting (which is H.264, which takes longer to encode) bumped up to 62% constant quality, and have detelecine and decomb turned on. I rip an AAC stereo track and an AC3 surround sound track for audio. Video_TS folders are stored on an external USB drive (I've found fps/encode time doesn't change much at all whether reading from my USB drive, my FW drive, or my internal drive,) and the encodes are saved to my internal. With this setup, I average 7-9fps, and it usually takes 4-5 hours per movie.
That being said, encoding a movie in MPEG4 at 640x480, 2250kbps with detelecine and decomb, and with a stereo track... my machine will average 25-40fps.
I think in the case of Handbrake, the settings are going to be more important than the hardware (unless you're on a Mac Pro.)
Back to the OP: if you are using average bitrate for your movies, I would agree, 7-8fps is quite slow. It should probably encode faster than that.