I had worked on a similar kind of migration last year and wrote a custom script that makes use of Share Gate Shell dLL's to pick up an Item ID mentioned in CSV ,migrate it to the destination and then log about it in a log file.
You can find the code and all the details at the blog below-
Basically this code was written so that we avoid the throttling issue and only mention the ID's that we want to migrate part by part.
All you need to do is create CSV's and mention the ID's that you want to migrate(in your case create seperate CSV's for seperate libraries) and schedule this script to migrate those libraries one by one.
Logging is preconfigured in my code so this should work great for you.
Only thing is that you will need a ShareGate license so that you can make use of it's dll's.