Here comes a native speaker. First, ばか/バカ/馬鹿 is not slang nor swear. It’s just a word like stupid, or idiot. Second, there’s no rules nor solid customs to decide the choice, but each gives off subtly different impressions:
ばか: somewhat aggressive, imo
バカ: somewhat humorous, imo
馬鹿: somewhat obsolete, imp
ばか野郎/バカ野郎/馬鹿野郎 is just a compound word. He’d lose the argument.
*Note that Japanese doesn’t have so many slang like English, which may confuse learners, because many of slang such as ‘dumbass’ happens to be translated into バカ.