Si por alguna razón necesitas hacerlo con el Arduino, te recomiendo usar un programa para inspeccionar los mensajes del ordenador al Arduino (por ejemplo https://freeusbanalyzer.com/).
Así podrás ver qué eventos se mandan e intentar averiguar qué significan.
Hay algunas preguntas que te puede ayudar a responder;
-El evento para encender los leds, se manda al Arduino también, o tan solo a tu teclado normal?
Si solament se envían al teclado normal, es posible que tengas que activar algo o añadir algo al descriptor HID de tu Arduino.
- Qué formato tienen los eventos, cómo sen envian los datos?
La funcionalidad de Keyboard.h está limitado, pero puedes modificarlo, y las clases que Keyboard.h utiliza también se pueden modificar, son ésas clases que se encargan de la funcionalidad de HID.