I had a similar situation when my two girls were younger. I have two suggestions for you. The first is that Costco actually makes a very soft down-like pillow that is machine washable. They are sold in a two-pack for about $20. The pillow is the perfect thickness for a little one. My 6 year old loves her pillow.
My next suggestion is to go to the linens/pillow department of your local Walmart and purchase a pillow cover. They make all types. I used to use the plastic zipper type directly over the pillow, then the pillow cover over that. If my daughter vomited or leaked in the bed, then no more ruined pillow. The only drawback I have found to the plastic cover is that it can seem crinkly when you lay on it and the pillow case slips off rather easy. However, they do make waterproof cotton cover that zips on as well, but I have never tried these.
FYI: You can also purchase plastic mattress covers too. You put them on the mattress before the mattress pad that way the wetness won't go all the way through to the mattress and stain it. This was a life saver for me on a couple of occassions when my daughter vomited in bed and it soaked everything. At least we weren't left with a smelly mattress.
Good luck!!