Our schools do several things that are successful. One is a book fair in November (use Scholastic or other well known company) and people will buy for the holidays. Our schools combine it with an ice cream social where people pay to make their own sundaes. It's a cheap social night out.
Another option is a shoebox auction - even in a tough economy, companies/merchants will give away tickets (movies, Duck tours, museums), gift baskets, gift certificates to restaurants, services at salons (which cost them nothing but their time), and so on. Parents/kids can buy raffle tickets at $1 each and just put them in the shoebox in front of the item they are interested in. It's better than a raffle because people are only buying tickets for items they want. You need to collect a ton of shoeboxes ahead of time, and collecting donations involves legwork, but it can be done.
Some schools do gift bazaars in which crafters and other vendors pay a fee for a table to display their wares, and then they get the proceeds from all their sales. You collect table fees, and they are responsible for setting up their space the way they want. They have a certain square footage and that's it. You have to allow for electricity needs for some but if you put that on the form, the vendor will tell you whether they need it or not. In many such bazaars, each vendor is required to donate an item (set a value such as $15 to $25) for a raffle, then sell raffle tickets for $2 each or whatever. You keep that money. The only problem with this idea is if your community already has a lot of gift fairs. The best time to do this is November before the holidays but if it's "overkill" in your community, then there may be too much competition.
In a tough economy, the gift cards to area supermarkets are successful because that is money that parents are spending anyway - they just buy the cards thru the schools at face value so it doesn't cost them any more. The stores do it because it channels shoppers into their market vs. a competitor, and because some people tend to spend a little more when they have a gift card in their wallet (even though they already paid for it!). This program requires tremendous accuracy in accounting, but it can run all year. If parents tend to use credit cards for their groceries in order to accumulate airline miles, your PTA would have to have the ability to accept these cards.
Another option is to have parents (and grandparents and friends of friends) access key shopping sites through your school's website. For example, Vistaprint (business cards and many printing needs), LL Bean, Staples, Amazon, and many other sites let you put their logos on your web page, and then people do their regular shopping through you, and you get a percentage of their purchase amount. People are not spending anything more than they normally would, and it capitalizes on the fact that SO many people shop on line these days. Again, it is ongoing and year-round, and it requires a lot of ongoing publicity to get people in the habit of using it. It lets anyone participate (including Grandma 4 states away) as well as people who live in town but don't have kids in the system, and it lets them support the program without having kids ring their doorbells selling candy bars.
I like the idea of a Thanksgiving pie sale - a local church makes a fortune doing that. They actually bake all their own pies and it takes a real organized assembly line of dough-rollers and apple-slicers to make it happen, but they don't have the charge to the bakery company.
I think a combination of fundraising programs that combines ongoing sales and some special social events is a good mix.
I absolutely agree that giving prizes to kids who sell the most puts a lot of pressure on kids and creates unhealthy competition. Most of the big prize winners are kids whose parents took the order forms to big offices - so the kids aren't doing the work anyway. It sets up ridiculous one-upsmanship and penalizes the kids whose parents work in small companies or at home.