Extensions providing APIs to other Extensions

Maybe it would be easier to integrate all APIs directly into Firefox.

Technically you are right, but i think it’s a problem of responsibility. If you implement a new API in a native application (controlled by an add-on that exports the service to other extensions), whatever security hazard this introduces (that the user accepts or not by choosing to install the native app) is no longer Mozilla fault.

This is the reason why using native applications are allowed by Firefox add-ons rules, as long as the application is installed explicitly by the user.