I had a discussion with an Australian colleague. According to him, "...you should speak good English..." is grammatically incorrect and that "...you should speak English well..." is the proper way of phrasing the sentence. Naturally, I disagreed because although the latter may be considered more formal, there is nothing wrong with the former, grammatically, that is.

In "...you should speak good English...", good refers to English. In "...you should speak English well...", well refers to speak. I believe both are correct and interchangeable although depending on what you ultimately want to stress, one may be more apt than the other.
I agree with you. There's nothing ungrammatical about "good English". As you say, it depends whether you want to stress what kind of English you should speak or how you should speak English.
Teachers: We supply a list of EFL job vacancies
“Good” is the adjective; “well” is the adverb. You do something well, but you give someone something good. The exception is verbs of sensation in phrases such as “the pie smells good,” or “I feel good.” Despite the arguments of nigglers, this is standard usage. Saying “the pie smells well” would imply that the pastry in question had a nose. Similarly, “I feel well” is also acceptable, especially when discussing health; but it is not the only correct usage.

Source: http://www.wsu.edu/~brians/errors/good.html
"Hi proper English"
Are you really angry with those words? I think the important thing is to speak English, I think both are correct.
Thanks CalifJim! I guess my friend owes me a beer!
Site Hint: Check out our list of pronunciation videos.