Exchange Server 2007 Setup
As for RAM, we have between 4000 to 4500 users and both of our mailbox servers are at 8GB of RAM. We're working. Since you have an order of magnitude less users you should be just fine with less memory.
Getting 2007 in the system We set up our full 2007 environment in parallel to our 2003 environment before we moved any real users over to the 2007 servers. This allowed us to get the 2007 servers into the 2003's routing group so mail would correctly deliver between the two environments. Next, I believe we cut over OWA to the 2007 servers; users on 2003 would still get the 2003 OWA and when we moved them over to 2007 would automatically get the 2007 version of OWA.
Then you need to make sure your 'autodiscover' stuff is in place for 2007. I can't remember exactly what this is off the top of my head, but there is some DNS stuff that needs doing.
Replicate your Public Folders over to the 2007 servers. That'll get 'em on there.
Migrating users We did it in batches over about a week. The users didn't even notice. When they move they get the new OWA. If they're already on Outlook 2007 some features will start working that weren't working before.
Clean up There are some gotchas in removing the 2003 servers from your environment. Be careful about this. We missed a step, and I still don't know what step that was, that made things like delegates stop working and Entourage users start griping. It all started when we removed the 2003 routing group. So, read up on that and don't be like us. Otherwise, you and the LegacyExchangeDN will become dear friends.
Sounds like fun! Here are some thoughts:
Disks:
I'd skip the iSCSI and go with DASD if it's cheaper. Since you don't need shared storage for CCR I'm not sure that I see an advantage to iSCSI unless it gets you more / better disk cheaper.
Disk option 1 seems like underkill, but I don't know how much mail data you have.
Disk option 2 will offend some people w/ the OS and pagefile being on the same spindle as the transaction logs, but I'd predict that you'll have so little IO contention there as to render that point moot. With that kind of RAM I can't imagine you'll be paging frequently.
Disk options 3 and 4 make sense if you're going to use iSCSI, though in either case you might consider using the excess disks in the server computer as a RAID-1 volume with a storage group for, say, public folders on them. I think that an iSCSI volume for the transaction logs might be a bad idea, depending on the throughput of your iSCSI gear.
CPU and RAM:
Microsoft seems to think that you want more cores, as opposed to higher clock speeds. I tend to agree, but I can't base that on anything other than anecdotal observation of performance. Exchange has always done a great job of taking advantage of multiple CPUs, and I can't imagine that E2K7 is an exception.
Your RAM configuration ought to be plenty, per Microsoft's planning guide's formula (http://technet.microsoft.com/en-us/library/bb738142.aspx), but more accurate planning could be had by working up some sizing based on your existing E2K3 install.
Migration:
A move-mailbox migration is your friend, and it's not complicated at all. You can stage everything while the E2K3 server computers are in production and migrate away from them as time allows. Your routing group topology sounds pretty straightforward (>smile<) so it won't be a big deal to mail routing going as you bring E2K7 online.
There is no option to "pre-build" if you're going to go the "cutover" route. You can't have both an E2K3 and an E2K7 organization freestanding in the same AD forest.
Public Folders:
Keeping your old E2K3 machines to host public folders is certainly a possibility. If not, replicate the public folders to the new public stores you create and, as you've said, specify the default public store for each private store.
Clients:
Supporting Outlook 2007 and Outlook 2003 simultaneously isn't a problem. Technically Outlook 2000 isn't "supported" by Microsoft. I've never tried it and I've never heard from someone who has. I'd be wary of expecting that it would work and I'd test it. Supposedly as long as there's a public store available Outlook 2000 will work.
Outlook Anywhere works fine in E2K7. I don't know what to say about using Outlook Anywhere company-wide. I'm not aware of a comparison of bandwidth usage between MAPI on the wire versus MAPI inside of HTTP, and I think that would give you the answer. You could certainly mock it up and benchmark it with something like Wireshark. (Gee... another one of those "maybe I should do that sometime" ideas. I've been getting a lot of those since I've started posting on here...)
Hmmm. Well I could give you the anecdotal comment about loading that I'm running > 2000 users on a box with 24Gb with no issues, so 16Gb ought to cope with 400 users. Or I could point you to Microsoft's exchange sizing tool so you can use the scientific method for working out your needs.