I have the first gen, not the 3G, so not only am I eligible, I'm not under contract of any kind. That being said, here's my thought on the upgrade issue...
Before the 1st gen came out, you can't tell me Apple didn't already have a roadmap for a new model yearly. With that in mind, Apple and ATT really should have figured many would want to upgrade yearly. To account for this, they should have optioned a 1 year contract with less subsidy. That way, you are free to get the new phone every year. Instead of a $199 iPhone 3G, you would have paid $299. Then after 12 months, you get full upgrade eligibility. If you want the 3Gs over 2 years for $199, fine. 1 year = $299. Etc.
I haven't done the math, so I don't know if these numbers make sense, but you get the idea. The fact is, many would choose to upgrade every year.
It's $200 either way.So what?