Here is a Postman example that worked for me with Spring. Important is the content type application/json. I didn't use an array for the binary files, but I think if you just define another one with the same key, that should work.
@PostMapping(consumes = MediaType.MULTIPART_FORM_DATA_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
public Document upload(@RequestPart("metadata") AddDocument addDocument,
@RequestPart("file") MultipartFile file) {
//implementation code
}