Spec wise the CD32 is the best to choose. It is basically the same as the A1200 in terms of compatibility with games. You can connect an A4000 keyboard to the CD32 directly as it has a keyboard/serial port that directly supports this. It also has the same two joystick ports as the A1200 so can use Amiga mice for games like Lemmings, or for using Workbench. The CD32 also has an SVideo socket as standard, so you can get a nice picture on a TV without needing an Amiga monitor.
You can also burn CD-R's and they work perfectly on the CD32. So if you have the ISO for a game it can be burnt and should work perfectly.
Some people have also created game compilation CDs you can download from places like Underground gamer. This contain loads of older A500 and A1200 game that you can run directly from the discs on the CD32. The largest of these compilations contains 888 games on a single CD. Quite cool.
You can also expand the CD32 using something called an SX-32. This is a unit that connected into the back of the CD32 and it allows you to add fast ram and an HD. And it is also an accelerator, with the best version containing a 68030 at 50MHz, basically turning the CD32 into the equivalent of an A1200 with a blizzard 1230 fitted. So a very nice setup.
The SX-32 also contains all of the ports missing from the CD32 to give you back all of the ports the A1200 has. So you can then connect and use an external floppy disk drive, printer, modem etc...
In contrast the CDTV is basically an A500 with slightly updated kickstart rom and chipset, 1MB of ram and a CD drive. For me the CDTV is a much nicer looking system and the design was much better, with the remote control pad being much better if the unit was being used as part of a home entertainment setup under the main TV. You can also add a floppy drive, keyboard and mouse to the main unit. But the CDTV is too limited compared to the CD32 if you want to get the most from the system. The CDTV is really just a collectors Amiga. If you want one to play games on and enjoy then get a CD32.