It probably has to do with the multiple HID profiles aliasing - there are N number of virtual keyboards to allow registering for N-key roll over.
Its a nasty steaming hack, but then you'd be limited to USB's ~64 key rollover limit...IIRC.
Somehow the numlock indicator was on the 1st keyboard, the others elsewhere...linux has no idea which keyboards are real.
(KB should probably just merge all the LEDs in software)
This is another reason why PS/2 is still superior - The USB HID profiles have a great many limits, this isn't even the worst - have you ever wondered what the USB (UHCI) software stack does to latency?
It destroys it.