The problem is that Mendix needs to be able to revert all your actions in case of an error. Now there are a couple of things you can do. The community commons has some actions you can use. You could use StartTransaction and EndTransaction in each iteration of reading data. This way Mendix does not have to keep those in memory. Do note that even when there is a problem in your microflow those objects still will be in your database. Now since you already use a dummy entity (what I would always advice with these kind of imports) this will not lead to problems in your case. Now the next step is processing your data. You could do that with custome retrieves where you process your data in certain amounts (with amount and offset). Depending on how much you do I would iterate with an amount of 100 at the time. Do not forget to commit each iteration before retrieving the next set of 100. If you do not encounter any memory errors again you could try raising the amount but you would probably only see a marginal better performance when using larger amounts.
Regards,
Ronald