Ok ... I think I have found the issue.
We are currently storing files in Azure Blob Storage, and our site was configured to store the "File System". So, every time we tried to clone a template, the files were being pushed to Azure (CMSVirtualFiles), but still trying to reference the files locally.
I changed our config so only Media Files are stored in Azure, and this fixed the issue.
I think we will go with the fix, but I would interested to know if there is a setting I'm missing that would make the original issue work?
Thanks.