There's lots of wiggle room if you're regularly sanitizing your powders By spraying with alcohol
Mascara- absolutely not
eyeliner pencils- if you dip in alcohol to disinfect and let dry overnight can last until it dries out.
As long as your cream foundations are pump style and you're not dipping into them, they should be good until their consistency changes or they smell off.
If you're regularly sanitizing your cosmetics and brushes you can make them last longer. Just be extra careful to throw mascaras out every 3-4 months. They collect bacteria like crazy and it's your EYES!
I honestly pay close to zero attention to supposed expiration dates. I have lipsticks and eyeshadows that I've had for years and they still have the same smell, consistency, color etc... and I've never gotton an eye infection and I'm rarely sick. (I do clean my brushes and sponges regularly though and don't stick my fingers in things.)
Of course when it comes to mascara I only open one tube at a time so I never have one more than a couple of months. This is one product you need to pay attention to how long you've had it open. One of those little circle garage sale stickers are be great for writing "opened on" dates especially if you do use more than one at a time.
Just use common sense. If it changes (smell, texture, etc...) - toss it.
@ hearts my face (for some reason it won't let me reply) -
This is great info, thank you! I am going to start doing all of these things. When you say spray your powders, are you using straight isopropyl alcohol or a dilution?