Happy New Year,
I know this can be frustrating. When you upgraded your iMac from Leopard 10.5.x to Snow Leopard 10.6.x, did you do an upgrade or a erase and install of Snow Leopard? Based on all your troubleshooting I would say there are only two logical answers. 1) Some piece of software just has the 11N functionality broken on your mac, or 2) There is a hardware issue with the wireless card in your iMac that shows up with you try to talk 802.11n. Any chance you bought the applecare warranty with your Mac? If so I think it's time to call Apple to see what they say.
On another note, you have allot of devices on your wifi network. If they are all using it just for inet access then no real issue, but if you are pushing allot of files across the network, doing backups, etc, it might be worth your while to break up your network. For example my setup is DSL modem -->DIR-655-->Apple Airport Extreme. The 655 is my main router, it provides DHCP, firewall, and QOS for my network, along with guest access when we have family in town. He also provides wireless access to my devices that don't need the fastest speeds (iphones, wii, wifi printer), the airport extreme provides 5Ghz 802.11N only access to my two laptops along with my gig ethernet connected NAS. It may sound complex but it's really not and allows me to do network time machine backups and video steaming at maximum throughput. Remember even with your 655 set to do 802.11n and g, it has to broadcast at the lowest common level, so while your 802.11n devices will get better speeds then g they won't see the full potential of n. Again if we are just talking internet access this really doesn't matter (unless you have a 20mb+ inet connection).
Just something to think about in the new year, hope it helps, keep us posted with how the imac troubleshooting goes.