It doesn't help that AT&T is the worst carrier for Android. They've had the iPhone for the longest so they really don't give a crap about Android phones. Sprint and Verizon both get much better devices.
I've actually been really happy with my Epic 4G, which is just the Sprint version of the Captivate. It has 4G (wimax), a hardware keyboard that I never use, and a flash for the camera, but other than that it's the same phone. It's not perfect but it's pretty dang good, especially compared with the truly awful Samsung Moment I had before it (zerocool can back me up on this, he had the same phone, what a completely worthless piece of shit).
On the app stores and apps in general: I haven't used iOS very much. Played around with my dad's iPad and iPhone a bit, but not really enough to have a strong opinion either way. But I still don't really understand the argument that Android apps lack polish. Maybe I'm just used to them, but they seem pretty similar to me. They've improved a lot in the last couple years. In general, iOS apps look a little prettier, but I just don't like how they're laid out. Because the iPhone has only a home button, apps must incorporate all their settings and navigation controls into the main screen, whereas in Android you can hide those until they're needed (with the menu and back buttons). Combine that with a phone that has only a 3.5" screen and iPhone apps feel claustrophobic to me.
The other thing I noticed, and this was really more on the iPad than the iPhone, is that there aren't a whole lot of decent free apps. But I was only really looking for games, so maybe there are plenty of free non-game apps for iOS, I don't know. All I know is I was trying to find a Sudoku game for the iPad and I couldn't find a single one for free that wasn't a heavily gimped demo. On Android, in general, apps are either freeware or free but ad-supported, with the only difference in the paid version being the removal of ads. On iOS, the free games I came across were all demos. Free sudoku games would be locked on the easiest level, or they'd only have four or five different puzzles. One solitaire game was free and not technically gimped, but it had pop-up ads. Again, maybe my experience was abnormal and there actually are a lot of good free iOS apps, but that wasn't my experience. I understand that developers need to get paid, but if I have the option of an OS that has more free stuff, why not?
The last thing since my post is getting pretty long is that there seem to be a lot of parallels between Mac and Windows in iOS and Android's usability. iOS seems to have precisely one way of doing everything, whereas Android has multiple paths to get to the same end result. Whenever I am looking to do something in a Windows app, I can usually just try right clicking on stuff until I find what I need. Similarly, in Android, you can long press on elements to get more options for them if you can't find a function in the menu. Since iOS has no menu button and no long press, you have to know exactly what to do. It's usually easy to figure out but not always. When my dad was trying to edit contacts on his iPhone, he ended up accidentally calling a bunch of people until he figured out precisely how to do it.
PS I agree with you on the ugliness of Android custom ROMs. I really think the ROM guys should leave themes completely alone. I don't want Android bots, flaming skulls, tribal tattoos, shoddy gradients, script fonts, or other asinine crap on my phone. There are usually a few ROMs that leave everything alone though. CyanogenMod is pretty close to stock Android, and there are also often a few "stock + rooted" ROMs that let you apply whatever little tweaks you like without changing much from the stock experience.