(I’ve moved this to Projects so you can get individualized responses based on your own setup and preferences.)
I’m sure that’s been an adventure! At present, as you suspected, each hub needs to have its own separate smartthings account and it’s own separate Amazon account or things just get muddled. Smart things has said that in the future they hope to be able to allow us to have multiple locations with multiple echoes/dots, but you can’t do it right now. You can have multiple echoes/dots at one location, no problem. Or you can manage to separate smartthings hub’s through onesmart things account. But you can’t separately assign an echo to the hub and if you do the device list get mixed and you get very unpredictable results.
So for now, just setting them each up as two independent accounts will work best.
As far as the duplicate devices for one account, different people handle that differently. Personally, I connect any devices to Alexa through their own native integration. So I do not tell smartthings to add all devices to echo. Instead, I connect the hue bridge to echo through the Hue/Alexa integration, and I individually pick the devices on my SmartThings account that I want to connect echo through the SmartThings/Alexa integration, and I leave the hue bulbs off of the SmartThings list. I just find it works better for me that way. But there are people who prefer to authorize as many things , as possible through their smartthings account and so then they have to delete the Hue copies of their bulbs. You can do it either way, whichever seems best to you.
You can definitely trigger a chain of events using just the official features, but only for one hub at a time.
Echosistant is a custom project developed by some community members, including @bamarayne , which lets you do a lot of things with Alexa that you can’t do just with the native features. For example, you could ask it if a door is unlocked. Setup is a fairly complicated, although there are a lot of people who will be able to help you. It’s piggybacking off of the SmartThings implementation, so I don’t think it solves the two location issue. It just gives you a bunch of additional features.
There’s another similar project called AskAlexa. Both are good, they just offer somewhat different capabilities. But again, more set up work.