1. The French term "peur" which means "to stink" thus P.U. is a shortened expression to say that you stink.
2. It's a shortened term for puteo, which is Latin for "to stink, be redolent, or smell bad."
3. It's actually spelled "pew," but is often pronounced as "pee-yew". It's root is the Indo-European word "pu," meaning to rot or decay.