I wonder if it's because there are only so many codes available (10.000) and AF has simply run out and uses KL codes to fill the gaps? DL actually has a similar problem and uses the same code for multiple flights on any given day.
As for the JV non-stops, those have been under a DL code since forever; the only way to get an AF or KL code on them is to book them with a connection.