High season in Zanzibar runs from late Oct/early November until March. That's a guarantee for no rains, but also pricier accomodation.
I went in June, didn't see a drop fall and but half price on practically everything - having even stretches of popular beaches to myself.
Just avoid the really rainy months - July through Sept if I'm not mistaken. about 7 years ago