Wow, this is a difficult question even for a native speaker! :D First of all: you can say "Az angol férfi zenész". It wouldn't be correct from the other way, "the English man is musician" sounds a bit lame without further context.
There is a very faint difference in meaning. Without the indefinite article the occupation has less stress on it. "Az angol férfi egy zenész, nem ért az autókhoz" could convey the speaker's general opinion that musicians know nothing about cars. "Az angol férfi zenész, nem ért az autókhoz" has the more definite message that the speaker doesn't speak in general terms, but has the opinion that this certain musician knows nothing about cars. I think this difference is present in the English, too, but I am not really sure. I am just a human, after all ;) (Sorry, I just love Rag 'n' Bone Man's song.)
Because it is two different word, here English is the adjective of the noun "man". So the sentence could use "magyar férfi" too what would not be "Hungarianman", you know. I hope I did not write anything silly >.< But in English Englishman sounds better, doesn't it? So I think it too that is could be ok.
Agree! Nevertheless this difference is present in English, too. Just think of "a car", "a politician", "an apple", "an instrument", "a union" (note the pronounciation!), "an honour" (again!). When you say something with consonant first, you'll use "a" for the indefinite article, but otherwise you use "an". In Hungarian it happens to the definite article and it takes "z" instead of "n" but the concept is the same. :D