There are (at least) two problems with MAC addresses:
First, they’re not always unique.
Second, they’re not routable. IP addresses are structured hierarchically, so that if I’m a router on the internet, when data to a given IP passes through me I don’t need to know that specific IP address. I can look at the first part of the address to determine roughly where in the world it should be sent. If it has this prefix, it goes to Germany, but that prefix and it goes to Brazil. (It’s a bit more complicated than that, but that’s the basic principle).
I don’t need to hold a table of all 4 billion IP addresses and remember for each and every one where in the world it is. They’re grouped together so all addresses in this range go to this ISP in that country. Once the packet reaches that ISP, they know which of their customers it should be sent to. So each router only needs to hold a relatively small amount of routing information, in order to be able to route any packet to any IP.
MAC addresses have no such structure. Any given MAC address could appear anywhere on the planet at any time. So to route data based on MAC addresses, every single router on the internet would need to know the location of every single MAC address on the internet, in order to know where to send packets destined for any particular MAC address.