My DS (now 5) used to love tipping liquid soap, shampoo, conditioner, expensive face cleansers... down the drain. I think he liked the bubbles! He was about your DS's age at the time and it frustrated me no end. The only way we got the message through to him that he was tipping money down the drain was for me to say to him "now daddy needs to go back to work to earn some more money so that we can buy some more...(fill in the gap). That means we won't be able to go to the (park, beach whatever) today." And my DH would actually get dressed in his work clothes and leave the house (to visit a mate or something). DS was devastated that dad had to 'go to work' instead of staying home to play. We did this two or three times and DS started to think about the things he was wasting and stopped pouring things down the drain!

Good luck, I remember the utter frustration well!!