I think the reason historical: the current implementation of Pkg was developed around 2018 when Julia 1.0 was being finalized, and it was kept in a separate repo until it replaced the previous implementation in Base.
I think that being in a separate repository is fine (and I hope that all stdlib packages end up in separate repos, one day), but I do agree that its complete docs should live in the manual.
Now about Revise.jl: is an amazing tool that makes my life much easier, but it is still and incomplete solution due to limitations in Julia. It should be advertised more, but at the same time user expectations should be managed.
As for PackageCompiler: I have to admit that I never had to use it. I always tried to debug TTFX issues and kept startup times low for my environments. Improvements in 1.9 mean that I have even less incentive to use it.