I did not see any references to a 'batchSize' option for the configuration for this family of apoc procedures. I see three: 'writeNodeProperties', 'stream', and 'jsonFormat'.
You may want to refactor your query as follows, so you don't create a Cartesian product between your two match statements:
OPTIONAL MATCH (nod:User)
With collect(nod) as a
OPTIONAL MATCH ()-[rels:KNOWS]->()
WITH a, collect(rels) as b
CALL apoc.export.json.data(a, b, "knows.json", {})
YIELD file, source, format, nodes, relationships, properties, time, rows, batchSize, batches, done, data
RETURN file, source, format, nodes, relationships, properties, time, rows, batchSize, batches, done, data