When my daughter was little, she used to get a kick out of being naughty too. She liked to eat my chapstick. She knew it was wrong, and so I told her if she continued, she'd have to buy me a new one. Sure enough, she snuck into my bedroom and bit my chapstick again!
So, I made her get one of her dollars and off we went to the store. She handed the cashier the chapstick and her dollar. I got the chapstick and she got the receipt. She expected to get the dollar back, but -- nope! That did it, she never bit my chapstick again (and the receipt's in her baby book)!
Make your son pay for the eaten crayons he's had a hand in, I bet he'll never do it again! If he doesn't have any money, make him work it off with an age-appropriate chore (sort the laundry, empty the silverware tray, empty the garbage cans throughout the house, etc.).
Good luck, it'll be good for him to learn accountability early on since he likes to test the boundaries!