Alright, I solved the problem. When I exported the contacts the first time, I did it by selecting all of the contacts in the list of contacts and then hitting the share button and exporting them to a file on the old phone's internal storage. That created what looked like a perfectly normal .vcf file (when opened in a text editing app). But it didn't work. So I exported the contacts again, from the "Fix & Manage" tab in Google Contacts and that .vcf file imported fine on the new phone.
Although, now that I look more closely, it looks like the original exported .vcf file, as stored on the old phone, is identical to the second one. But on the new phone the file size is smaller and the entries in the file are truncated before the end. So I guess the original file just didn't copy over to the new phone correctly or got corrupted in the process.