The best thing to do is to keep at it. If you let him have what he wants (you are right, soda all the time is not good for him) then it's just going to go downhill from there. Have you tried watered down juice? Juice is good for toddlers, it's sweet, and if you buy the white grape peach kind or something similar, it contains less sugar than apple juice. Usually half water and half juice keeps it watered down enough without making it taste nasty.
You can buy him a cool cup (sippy, straw cup or otherwise) to drink out of that has his favorite character on it. You could let him pick it out at the store. Fill it with water and see what happens.
Another alternative is to give him sparkling juice if he really wants a fizzy treat.