The primary reason is a lack of suspended nutrients. Not many folks pooping in the water down there. About 50 years ago I was able to scuba dive in Chesapeake Bay over the eastern shore oyster bars just south of Chesapeake Bay Bridge at Sandy Point. In early October the underwater visibility was about 12 to 20 feet and improved as winter progressed. There's a good reason that oysters tend to be fatter in Chesapeake Bay and behind Virginia's barrier islands--they have a lot of nutrients to feed upon. Oysters in the Florida Keys are really thin.
About the same time I had the privilege to dive off Guantanamo Bay at Officers Beach, which is located just outside the Naval Station anchorage. Underwater visibility there on a bad day was nearly 100 feet. The only place I found better was at Cosgrove Light off Marquesses Key, Florida. The only problem there was bull sharks, some of which measured more than 10 feet long and very aggressive. There were massive schools of huge barracuda there as well, but they tended to be more inquisitive than aggressive.
All the best,