I often just say "go'morgen" and "go'aften", not pronouncing the "d" at all. Many people does that, probably either because of dialect or because they are speaking fast.
Many people do pronounce it correctly too though, which is with a soft "d". Soft letters can be hard to hear, but they are there.
It's not an 'l', but rather a glottal stop, a so-called stød. That often happens in Danish when a 'd' is at the end of a syllable, like in god. The 'd' itself is not pronounced, but it creates a short stop of the airflow. It happens pretty naturally when you try to pronounce "go'aftn" while trying to not mix 'o' and 'a'. There is a better pronounciation here, next to the "Udtale" entry.
EDIT: This is incorrect. It's neither a glottal stop nor a stød (which are two different things, by the way). I interpreted the stress marker [ ' ] as a glottal stop sign, but the glottal stop is written as [ʔ] instead. A stød is usually written as an superscript glottal stop, [ˀ].
Godaften is pronounced with an [oä] diphthong (closed 'o' to central 'a'), no weird airflow interruptions going on.
Yup. Godaften does not mean "good night". Aften only correlates with the English "night" in certain circumstances, like when you say "tonight" in English and actually mean "this evening", which is translated as "i aften" in Danish.
In the general case, aften is "evening", and nat is "night".