First, please stop giving your little one a sippy OR bottle to go to sleep! Please do a google image search on "bottle rot"... that should help you get tough! WOW.
And you're not a failure, silly. He's good at reading you, and knows you'll cave - you made a kid who's smart as heck! :D
So, here's the phrase I always used: "sorry, they're all gone!" Then it's not so much a decision that mom made, but just a statement of fact. Them's the breaks, kid - do you want a sippy or not, basically. And it's important to say it cheerfully, not all sad - he'll take his cue from you (once he's done pitching a fit to see if you'll cave again), so don't make it sound like something terrible.
You decide - they can either be "all gone" just for nap time, or you can entirely switch to sippies and truly get rid of all the bottles. He's definitely old enough to not take bottles at all.
It's up to you - you have to learn to get tough with your kid, and over bottles is MUCH easier practice than over too much TV or homework or PlayStation time or curfew!
You can do it! You're safeguarding your kid and you're the MOM! Remembering that makes us ALL tough when we really need to be.
Good luck!