I know this was a while ago but I wanted to comment to help others out. I ran into this same issue and it seems that if you have a photo or video (In my case a video) that you added, and it isn’t available in the store you uploaded your theme to, it will skip uploading the templates all together. I removed the photos and videos and uploaded it again and it worked. You could also just manually add the files missing, and manually remove the photos or videos from the JSON file.
Ok! Found it! The missing file was the product.json
In the code editor, under the “templates” folder, I selected “Add a new template” > “Product” and pasted my old product.json content to it.
Be aware that there was the broken custom metafiled which made the product not be imported. So look in the code for one of the “text” keys which would be something like
{{ product.metafields.custom.location.value }}
update or remove your custom meta field and it should work.