How can I make Dataprep Merge work per match instead of creating a single static mesh?

Sadly you cannot do what you request with the feature currently available in Dataprep.
There is no easy way to loop and merge even with a custom dataprep operation.

You can do that with a blueprint utility widget once the dataprep import is commited. However it will not modify your datasmith scene.