Modern hardware is fine, its the OSes that dont always utilise it particularly well. This is in part due to the more typical reasons people will suggest (ie. the OSes are much, much more complex beasts than Amiga OS), but one thing that's overlooked is development software. In the attempts to make things easier to use more and more layers of abstraction from the hardware is used, compilers arent nearly as efficient as they once where, binaries get bigger as a result of all these unnecessary overheads and so on. I have no doubt these sorts of OSes could offer exactly the same functionailty without the massive unneccessary overheads. Its not just the bloat of the software, but the bloat of the development tools as well.
Now I dont suggest we all go back to asm or binary, hardware and software is way too complex these days for that (it'd take so long to write the kind of software people are used to that no software would ever get finished, not to mention there's way too much hardware out there), but if someone with money decides to tackle these issues and write most things from the grounds up they absolutely could carve out a user base. In short I understand why things are the way they are, but although its tricky, they dont have to be as bad as they are.