So how am I doing?
Well, it depends. Are you using the Bitcoin.org client without encryption? You mentioned encryption with a third party tool, I presume that was just an encrypted copy of the wallet.dat so that you can store a backup securely elsewhere.
If you use the Bitcoin.org passphrase encryption, that will encrypt the private keys with AES. That alone is secure enough to protect your keys from theft -- you do not need to use any third party encryption for the wallet.dat after that, though the transaction data is not encrypted so to keep your transaction history private, you might also want to use a third-party encryption tool like you mentioned you had.
Know that if you already have bitcoins received and then encrypt, after encryption you'll want to do a spend transaction and spend the entire amount of funds to a new address post-encryption so that there are no funds sitting on bitcoin addresses which existed prior to having passphrase encryption.
As far as using many addresses, you can increase the size of your keypool so that you won't need to backup as often. Note that a new address is consumed only with each change transaction when you spend or when you click "New Address". Simply receiving multiple times to an existing address (which is possibly the method you are following with those "free bitcoin" services) doesn't consume any new addresses from the keypool.
-
http://en.bitcoin.it/wiki/Securing_your_wallet -
http://en.bitcoin.it/wiki/Key_pool