The idea that an indie game programmer shouldn't be doing their own marketing is at the heart of your argument against entering the market. If developers aren't willing to make that leap, they are not approaching games as professional artists, but as hobbyists. If you want to make money, you have to let marketing lead a lot of design decisions. There's still TONS of room to be creative given that one constraint.

The act of advertising the game is mainly a matter of getting it posted and reviewed online in places where your audience is most likely to look: If you're doing a niche, indie type of game, that doesn't mean catch-all portal sites. It means enthusiast communities. Most of the time it's just a matter of emailing whoever is in charge and having a few materials ready(screenshots, video). If the game is good it'll get a link. Multiply those links against every little blog you can find and you can gradually garner some support, even if the game is ultra-niche.

Pricing of the game-as-product is also an overly constrained way to consider monetization. It's hard to sell games because games generally don't sell themselves until you've spent hours playing them. So your two main options are to quickly grab the cash of the unsuspecting, or to build the rabid support of a few and give them ample opportunity to further buy in to your vision. And both of those two strategies can be taken far beyond just selling the game itself.

The real problem is making the game. It's easy to get lost in the multitude of challenges game development presents. If your motivations are poor, then there is absolutely no hope for the end result being any good. Jeff Vogel complains that it's hard enough for him as it is. But if you look at the games he makes, they're workmanlike and nearly interchangeable at first glance. They've definitely become more sophisticated over time, but not in ways that would help to grow his fanbase, build a brand name, or attract renewed attention.

You're wrong when you say "you're not building a brand." You most certainly are - you can build a brand around the type of games you make, the IPs within the game, the style of development you practice. Successful indies have a lot of style, even when they lack for production values. Nintendo is the king of game branding simply because they were the first - and one of a very few - to realize the importance of making their entire product line work as an "ecosystem" of high-quality brands and genres.

You're also wrong on there being no ability to iterate in making games. That is in fact the biggest advantage of indie/online development vs. retail: you can make dramatic changes and improvements via updates, add-ons and sequels, without spending a lot of money to push out a new SKU. Updates with "pre-registration" discounts are how the development of Mount & Blade was funded, for example. And the top retail developers have funds to effectively build the game two or three times in "reboot" iterations before releasing anything.

Essentially, what it comes down to is: looking at games as a product business will make the financials look bad. Looking at them as an attention+branding business, with a subsidiary monetization process, makes them look a lot better.

Even within the mainstream industry, a huge number of companies don't understand this, and coast project-to-project, with very little focus on tech reuse, design iteration, or brand development, and ultimately see nothing for their efforts. As well, most developers that do understand this are too undercapitalized to ever get a foothold. Game developers need a lot of runway - not to get great production values, but to have the time to iterate and build up their brand.