There could be two reasons at play:
1. There might be an active IO or a pending read/write keeping the LUN's active on some of the hosts.
2. Or, there are issues with specific paths or zones for the hosts that are having the issue
That leaves you with some interesting questions and possibilities
1. What if you reboot one of the good hosts
2. What is you reboot one of the non working hosts and check
Now, I am unsure as to what SAN this is or paths present or path policies set etc but you could try a trespass from the SAN and check if a subsequent rescan works