I have just tested. route.all-resources works as intended in the latest version of Openfire. You should know though, that it only routes to all the connected resources sharing same highest priority and only if a message was sent to a bare jid (user@domain). If you send a message to user@domain/resource1, then only resource1 will receive a message. This is usually happens after a first message is sent and one of the resources replies. Client usually use user@domain/resource when doing replies, so routing to all resources stops working after a first message. If you have a few resources with different priorities, you can use route.really-all-resources setting. This will route the message to all non-negative priority connected resources. But again, the same limitation about jid applies. To work around this you would have to modify a client to always send messages to bare jid instead of a full address, but there are no such clients out there as far as i know.
There is no way to disable multiple connections with different resources. This is a staple of xmpp standard, so it won’t be changed and there is no way to turn it off. You can try setting the same resource on all the clients of a user and modify the Server Settings > Resource Policy setting as you desire (either not letting second login with the same resource or kicking the first login).