HERE IS THE ANSWER FROM A LAOWAI (HE IS A PROFESSIONAL ENGLISH TEACHER):
Most Chinese English teachers can't speak English.
Chinese English teachers (and the system) put grammar and pronunciation as the most important issues, however, they only teach pronunciation on individual words (mainly) , and not much in conversational English. COMMUNICATION is more important than these two issues. learn to communicate - ie speak, listen, understand - and pronunciation and grammar will come automatically from those whom you speak too.
If you want your son to speak English, and if as you say your English is pretty good, firstly you should as much as possible speak in English to him. He will never learn to speak, from the Chinese education system. You have a big advantage over most Chinese families - you speak English. So, it's up to you. Your job is to talk to him and maybe have a foreigner also communicate with him. Cheers