I think there's a few reasons:
1. Groupons have to be sold over the phone to merchants in order for Groupon to get the margins and volume it wants.
2. Local merchants just don't have a lot of time to spend learning software and monitoring stats. They can talk to a sales rep over the phone more easily than set up a deal themselves.
If Groupon sent you 100 deals every day that were "buy one get one free" or "$1.00 off" or whatever, it wouldn't be very interesting and they'd likely lose a lot of subscribers.
So, policing the quality of deals and working with merchants to make sure they are offering a deal that fits with what you are doing is going to be a significant source of overhead no matter what.
...the self-serving issue is the big issue though. Local merchants at this point in time still don't do web-based self-serve solutions much or at all. Maybe that will change as the world becomes internet-savvier in general, but it's where we are right now.
Sales and customer acquisition are usually a lot harder (and more expensive) than throwing up a website and hoping customers find it.
Also, they can do things like yelp does with stickers at merchants places. A lot of places have the "Find us on Yelp" stickers and I doubt Yelp went out to find & convince them to do that.
I haven't spent too much time thinking how I could make Groupon better but I don't think it's really that far out there to find a better/cheaper way of acquiring customers.
Merchant submits deal to their local section, when people buy the deal it would rise in the section.
you don't have to buy the deal to make it rise, just pledge to it; then when a minimum pledges are made it goes frontpage where the rank is determined by further buys