From what I can tell, this seems like a mistake in DL, and we are being taught incorrectly. Google "áo lạnh", and almost all the pictures are of winter coats. Sweaters/jumpers should really be "áo len".
"Áo khoác" is translated by DL as coat, but Google it, and it definitely looks like it refers to jackets (light weight, not coats).
Native speakers, correctly if I am wrong: Áo khoác = jacket (light weight, for cool weather) Áo lạnh = coat (heavy, for winter weather) Áo len = sweater (jumper in British English), knitted from yarn.