For those interested - I found the omission.
In usb_device_descriptor.c in the function 'USB_DeviceSetSpeed' around line 1511 the max packet size and interval are not set for the recording endpoints when the SYNC_MODE define is set to 1. Patch below.
#if defined(USB_DEVICE_AUDIO_USE_SYNC_MODE) && (USB_DEVICE_AUDIO_USE_SYNC_MODE > 0U)
g_UsbDeviceAudioSpeakerEndpoints[0].maxPacketSize = (HS_ISO_OUT_ENDP_PACKET_SIZE);
g_UsbDeviceAudioSpeakerEndpoints[0].interval = (HS_ISO_OUT_ENDP_INTERVAL);
/* ADDED */
+g_UsbDeviceAudioRecorderEndpoints[0].maxPacketSize = HS_ISO_IN_ENDP_PACKET_SIZE;
+g_UsbDeviceAudioRecorderEndpoints[0].interval = HS_ISO_IN_ENDP_INTERVAL;
#else