I used to buy some little marble sized balls that were meant to clean and de-stink a garbage disposal. You put one in, ran the disposal, then some water, and the stink was gone. It lasted too. Think I can find them anymore? I can't even remember the name.
I don't seem to have a lot of trouble anymore. One reason, I think, is I grind my coffee grounds every day. Seems to keep in things clean.
I've heard crushed ice will help clean it, but I don't know about the smell, that cleaning lady from the TV, queen of clean may be able to offer something if you search her sites, http://www.diynet.com, and her own web site, http://www.queenofclean.com
There is a product made especially for cleaning disposals, but I'm afraid I can't think of the name. You might ask at a home improvement store or hardware in the plumbing section. I found something by googling called "Plink" but it doesn't ring any bells, so I that's not what I'm thinking of, but it looks like it's what you want, so here 'tis: