As others have pointed out, you've missed a few details. So, you're getting 503's -- do you know why? Is processor or disk load too high? Is your server misconfigured? I'm guessing at this point that your host is managed by a third party -- have you asked them to explain the problems you're having? Have they offered a solution (even if it might cost you more money)?
What is your budget? What are you currently paying? What about your level of in-house experience? If you're a linux / unix admin (or have one at your disposal) you might be best served by using either a managed VPS or colocated server (or a couple, behind a load balancer, but that gets to be more expensive and complicated to set up).
If you're less willing or able to manage hosting yourself, be aware that generally, you'll get better service from managed hosting providers if you're willing to spend money. Even though you're a non-profit, probably with a limited budget, you shouldn't skimp on hosting if you decide that a managed host is right for you. If you typically have ~1000 active users on your site, any downtime will hurt you -- even if it doesn't cost you in terms of donations, it will make you seem less legitimate.
Anyway, here are your options:
Unmanaged VPS -- cheapest option, will require some technical expertise on your end. Potentially less reliable than colocated servers.
Colocation -- Can be expensive, requires a fair amount of technical expertise. If configured properly, your site should be very, very reliable, but there's a lot of room for error.
Managed hosting -- Forget about paying $80/year for managed hosting, considering the amount of traffic you're getting. You may have to spend $100/month or more. Good managed hosting won't require much experience from you or your staff, and will be less expensive (probably) than colocating multiple servers. Do research, read reviews, etc. to find a provider you feel comfortable with. While price is an important consideration, you shouldn't go with the cheapest option just because it's the cheapest. If you need to talk to a technician at 3am, you want to be sure that you're going to get someone on the phone when you call. It's also probably important that the person you get when you call during an outage / emergency isn't an idiot, and with most bargain-basement hosts, you're lucky to get a human on the phone at all.
Good luck :)