I haven’t fully tested an encrypted Matrix room yet, but I checked the Cloudron image and it does not look like mautrix[encryption] is missing. The package installs Hermes with the matrix extra, and in the pinned upstream version that resolves to mautrix[encryption]==0.21.0. I also checked the running container: mautrix 0.21.0 is installed, olm imports successfully, and the native _libolm.abi3.so from python-olm is present.
So if E2EE is failing, the next thing to check is probably Matrix E2EE configuration/key state rather than missing dependencies: MATRIX_E2EE_MODE / MATRIX_ENCRYPTION, stable MATRIX_DEVICE_ID, crypto store state, recovery key/cross-signing, and the gateway logs. I used to run hermes (locally, not on cloudron) with encrypted Matrix but ended up migrating to Telegram for features and ease of reliability. Encryption with Matrix for these things is a mess to set up.