This, in my opinion, is the single biggest issue with English education in Korea, and every other problem is pretty minute in comparison:
The kids advance to the next level automatically every year.
I wouldn't be surprised if the reasons for this were closely tied in with Korean society's age-based respect system and the fact that everyone born in a certain year is considered to have the same birthday. But the fact is, when everyone advances automatically and no one can be held back, you very quickly run into the problem of kids being way out of their depth and holding the whole class back. Then these kids become hopeless cases, and the Korean English teachers give up on them, and they're allowed to just float through English classes all the way through graduation.
These kids start learning English in 3rd grade, and some start even earlier. I teach middle school. By the time they get to me, they should have had three years of English education at the very least. Anyone who studies any language formally for three years should be proficient enough to have a basic conversation. Yet over half of these kids are nowhere near there. Some of them get to age 14 (at which point they would have had a minimum of five years of English education) without being able to read basic words.
It's pretty frustrating when I ask my students to describe a person's physical appearance, and the best they can muster is "Teacher! Hair! Black!" Especially when I've spent the last two lessons trying to teach them to say things like "She has long, black hair."
Students should have to face the threat of having to repeat a level if they don't learn the material by the end of the year. That alone would do wonders for the state of their ESL education.