Yes, South Beach is
the place for gay men. Check out this link--
Gay and Gay-friendly Hotels in South Beach, Miami, Miami Beach - SOBEGAYINFO.COM --it's a great resource for gay-friendly hotels, although South Beach is generally very gay friendly. As far as gay bars go, Twist and Score are the two most popular, although there are many.
I'm not sure why you'd venture off of South Beach if you were vacationing here, but "mainland" Miami is not very gay friendly at all. I wouldn't walk down the street holding your partner's hand. Nothing would probably happen, but it's WAY more conservative than South Beach--it's almost stifling (something that really surprised me upon moving here). Oh, also, the 12th Street beach is the gay section of the beach and is tons of fun. As the name suggests, just walk down 12th Street on South Beach and you'll run right into it. You can't miss the big rainbow flags in the sand! Have a great time!