The thing is, it works better. A simple API like pledge/unveil allows apps to significantly improve the security level without much of time investment.
Meanwhile, complex external systems like SELinux end up being unused because they are complex and external (and thus can just be ignored).
It doesn't. You can download malware and the app can cryptolock your entire system. Sure, if the malware called pledge to block opening files but what malware is going to do that?
This has changed a lot in the past decade -- any modern Fedora box has SELinux enabled by default now and so I would wager the majority of Fedora/CentOS/AlmaLinux/RHEL boxes have SELinux enabled and in enforcing mode. openSUSE/SLES is also switching to SELinux in 16.0.
Meanwhile, complex external systems like SELinux end up being unused because they are complex and external (and thus can just be ignored).