Android has traditionally been very stingy with memory. Like really stingy. It depended on the device but back in those days you could not assume your app could use more than 16MB of RAM. That was the default heap size limit. High-res devices often had the limit set to 24MB.
Only starting with Android 3.x apps could request more (largeHeap setting in the manifest).
By contrast, iPhones around that time had 2GB of RAM but an app could use almost all of it.
No, it’s not as simple as that. A large part of Android is written in C++ and not Java or Kotlin. Think of things like the web browser. Also things like more demanding games will be written in C++ so they won’t be affected by this at all.
It’s mostly the simpler Java/Kotlin based apps, which will be a majority of the apps on the Play Store. They don’t necessarily need the performance, but they will be more wasteful with memory than comparable iOS apps.