As you mention, Apple only allows you 50 promo codes per update (NOTE: doing an update allows 50 more codes. If you're ok releasing the codes 50 at a time over several updates, this will work for you.)
One thing that you can do is build unlock codes into your app. You can either hard-code the unlock codes or, for a little extra effort, make the whole thing server based. This blog post talks about one such way to do this.
NOTE: in-app unlock codes will only let you give away content to people who already have your app. If your app is in the store with a price associated, and you want to give it away, this won't help you.
You can also buy copies of your own app and give iTunes gift codes to people. This has the downside of costing you 30% (Apple's cut.) That is, if you pay 99¢ for a gift-code for your app and send it to me, you get back 70¢ for the sale, but Apple gets the other 29¢.
You could change the price of your app to free for a day or two and only tell certain people about the sale dates.
If you're a big company (5000+ employees), you can use the enterprise license, but the tone of your question makes me think this might not apply.
That's about it for choices. As one commenter pointed out, any sort of gaming the iTunes system will likely result in your losing your dev license and is probably not worth it.
Good luck!