i use a funnel and run warm water down (via shower) my non-washable hoses. you should see the residue wash out until it's clear. i run it for ~60 secs. then, i G-force : ) the water out by basically doing this
, first to the top half, second to the bottom half--i find it works best in two steps. then
i hang-dry it mouth-piece up, hookah port down.
i know the residue and smell you're talking about. the difference for me is night and day after doing the above. just minimize the conditions that might cause it to rust, which isn't difficult.
if you could maintain airflow while it was hanging dry, even better.. say, with something like this