Quick suggestion, create multiple views on the source server, i.e. vw_source_1_100000000, vw_source_100000001_200000000 etc. where you filter the rows into the right sized chunks.
Then use the import/export thingy to append them to the target table one at the time.
You could of course to a table valued function for this but I think the views are simpler.
😎