the best beach by far is the Iberostar Costa Dorada.
The beach at the Bachata is ok, but to have a good swim, use the beach at either the Merengue or the old Mambo. Both these beaches are available to you when staying at the Bachata. AND, you won't be bothered by vendors on the beach !!