At the moment the DNS and MX records are all configured in the existing providers settings panel. I appreciate it would be nice if instead it all just pointed at a thirdparty nameservers, but that's not the case and not going to change.
My Question - if I initiate a transfer to you is there any way to setup the DNS and MX records ahead of the final transfer?
What I obviously don't want is for the transfer to be made and for the website and email to all go awol until I'm aware and can configure things.
No, there is no way to set DNS records before the transfer is completed. The best way will be setting your domain to use name servers from third party hosting provider so the website and email won't be affected:
If I transfer my domain to you, will my website and email be affected? https://www.dynadot.com/community/help/question/affect-of-transfer