Should project config be used during development when migrating from Craft 2?
I'll answer this for the benefit of anyone else attempting the same thing i.e. sizeable Craft 2 to 3 migration, while you still have the Craft 2 site live.
Ultimately, I chose content migrations and chose to basically ignore the projectConfig functionality for the most part during development. Since I originally asked the question projectConfig changed a bit and got better, rather than it being one big file it is now abstracted out, so it's easier to manage and conflicts are resolved a lot easier now. You previously could disable projectConfig, you actually can't now for the most part, but you can ignore the config/project path at least during development and not check in these files into your source tree, then enable it when you go live and sync the projectConfig files down from production to all environments to then use it going forward.
I chose content migrations because they are repeatable and will continuously test the same logic on any migration run, this verifies for the most part the integrity and conditions that the migration has on each DB migration test and if it fails, it means integrity has failed and it needs to be reviewed.