Roatan wins for the boat diving aspect. Since it's basically all boat diving except for the dive off Cocoview/Fantasy Island. There's a lot of nice resorts in West Bay and also both coasts. Might look at Anthony's Key, Barefoot Caye, the new Media Luna, Luna Beach Resort, there's many others - mostly in West Bay. The best beaches are there also.
You probably don't want to drive there though from the aspect of what could happen if you hit something - like one of the $500 stray dogs that roam freely until hit and instantly adopted by whoever's closest. Cabs are cheap and plentiful. A trip n/s across the island is under $10 if you negotiate. Local sightseeing would be the Garifuna villages, ziplines, Gumbalimba park? The West End has an interesting collection of shops and restaurants. Also the majority of the bars but it's really only active later in the week.
Lot's of bugs on Roatan day and night. Mosquitoes, Sand Flies on the beaches etc. Deet or the equivalent is recommended. It's also real humid there. Of the three islands in this post it's the only one where I took anti-malarials on the advice of a travel nurse. And the only place I returned from well bit up - I only forgot the Deet once or twice.
We rented a house and stayed near the West End, it is the club/bar area but also there's the greatest concentration of good restaurants.
Bonaire is about shore diving. Everyone says that. But I liked boat diving there in the mornings. You can go out to Klein Bonaire, dive sites like Rappel, the Hooker, 1000Steps, Karpata etc. from the ocean side which is a lot easier than climbing over the omnipresent ironshore found at most shore dive sites.
There's a small shopping area downtown, mangrove kayaking, windsurfing at Lac Bay. Rent an SUV and drive up to Slagbaai park - or you can go there with the standard Bonaire rental - 4 door small pickup - but it will take longer. There's about a 40min. loop from town thru Rincon (goats outnumber the people) and back that you can drive. Also the slave huts/lighthouse/salt pans/flamingos at the south end.
Nicer resorts there IMO are the Plaza, Harbour Village (nicest) and some of the condo complexes. We stay at BelMar Condos, it's south of town, quiet, pool, no beach but an easy entry shoredive off their dock. Nice units, all have west facing patios and the 2nd Buddy dive shop is on-site.
A third option might be Curacao. It's the same reef as Bonaire, but if you did want to shoredive, entries are mostly off sandy beaches or dive docks. They have clubs, about a dozen casinos, good restaurants, the famous shopping area downtown - including the floating bridge, the Seaquarium, Ostrich Farm etc.
Nice resorts, a new Hyatt, the Marriott Emerald Resort/Casino is very nice, there's a Marriott Renaissance downtown, and if you're looking for something more isolated, Lodge Kura Hulanda in Westpunt is one of the Leading Small Hotels of the World. It's very nice - I've been in a suite. Ocean Encounters on-site for all your diving and they go to Watamula which is the best boat dive on Curacao. There's also a Breezes in Willemsted as a more affordable AI option.
It's a lot hillier than Bonaire so there's some dramatic ironshore cliffs on the west end. We stayed a few days in Lagun, it was really quiet and pretty dramatic - a 60' drop from our patio to the water. Good breeze and dolphins cruised by 2 mornings. Curacao is also slightly grungier since there's both a cruise port, deep water container port and oil refinery near Willemsted. And 10x the people vs. Bonaire.
hth,