"I have no brothers" is perfectly correct English. A more literal translation of the Portuguese would be "I do not have brothers", but this sounds less natural in English.
"I have no brothers" is correct, but it wouldn't be the preferred form for a native speaker. The use of "no" + noun is emphatic while "not any" + noun is neutral in tone. "I have no brothers" sounds robotic.
"I don't have any brothers" combines stressed and unstressed syllables in a rhythm that is the basis of English intonation. "I do not have brothers" also sounds emphatic because there are five stressed syllables in a row.
Grammar Dimensions 4 - Advanced English.
Thanks, everyone, for your comments. I was always told that "I have no ..." is more of a colloquial phrase and should never be used in formal writing. For example, I would never write "I have no brothers" in a work e-mail. So it took me aback when I saw it here. Rather, I would write "I do not have any brothers", which is more proper; though I agree that this phrase does sound robotic and when talking I would rather say "I don't have any brothers". English is strange that way!