Yes this is possible. Let's assume project-a is the project you want to migrate from and project-b is where you want to migrate to.
Export your record sets:
gcloud dns record-sets export $FILENAME --zone $YOUR_ZONE --project project-a
Create a managed zone in project-b
gcloud dns managed-zones create $NAME --dns-name=your.com. --description $DESC --project project-b
Import the record sets.
Before you do this you will need to remove to standard records (maybe someone knows how to do this better).
Edit the $FILENAME that was created above when you exported the record-sets and remove two items that look exactly like the following:
---
kind: dns#resourceRecordSet
name: clevar.cloud.
rrdatas:
- ns-cloud-c1.googledomains.com.
- ns-cloud-c2.googledomains.com.
- ns-cloud-c3.googledomains.com.
- ns-cloud-c4.googledomains.com.
ttl: 21600
type: NS
---
kind: dns#resourceRecordSet
name: clevar.cloud.
rrdatas:
- ns-cloud-c1.googledomains.com. cloud-dns-hostmaster.google.com. 14 21600 3600 259200
300
ttl: 21600
type: SOA
After you've saved the file import it to your new managed zone in project-b
gcloud dns record-sets import $FILENAME --zone $YOUR_ZONE --project project-b
Finally, when you are looking at the managed zone in the Cloud Console (e.g. https://console.cloud.google.com/net-services/dns/zones/$YOUR_ZONE/details?project=project-b) you'll see text in the upper right next to your login that says "REGISTRAR SETUP"
Click that and make sure that your domain nameserver records match what is in that box.
When I went through this the two projects had different nameservers so I did not have to worry about conflicts from the two projects trying to manage my DNS. If they are the same you can disable the DNS API on project-a without losing any data.
After you confirmed you have all your record sets in project-b and you've set the NS records properly with your domain registrar you should create a test record and use that as a way to confirm that everything is working / has propagated.
**Note: I ran through the above and I had my zone moved over within an hour propagation and all, however, you may not be as lucky so give it some time before you assume it isn't working.