The story
Reduplication of washy; more at Wikipedia under ablaut reduplication. The wish portion of the term is explained much more by the ablaut reduplication than by any coincidental semantic appropriateness (such as that wishy-washy people wish that they could have it both ways), although the latter effect may play some nonzero cognitive role in word-finding. Compare also swish, swash, splish, and splash regarding any possible sound symbolism.
Etymology from Wiktionary, CC BY-SA 4.0.