For anyone with this question in the future: I found out that the syntax for batch changes when you only have cell arrays as inputs. There is some explanation of this in the documentation of batch and of createTask. So, if all inputs arguments are cell arrays, then we should use
job = batch(@function_handle, N, {{ C1, C2, ..., Cn }})
where C1, C2, ..., Cn are all cell arrays. For my specific example above, the correct syntax is then
job = batch(@some_function, 1, {{{1, 2, 3}}})