They also decide what public key is associated with a phone number, right? Unless you verify in person.
No they can't. Key transparency cryptographically makes sure everyone gets the same result.
These are all good measures though. It's much harder for Whatsapp to mass attack users this way.
So for wa to do a man in the middle attack they would also need to convince Cloudflare to sign two inconsistent tree heads.