I've got a
Lexar Jumpdrive Sport that I think is a very good design.
The drive itself isn't actually attached to the keyring. Rather, it has a rubber holder that is attached to the keyring. There's no way the drive is coming out of it's holder by accident (it's not merely a cap, the holder goes around all 4 narrow sides and covers the USB connector completely.) and it doesn't have the problem of the keys pulling down on the drive while you're using it.
Unfortunately they haven't kept them up to date, the largest on their website is 1gb.