Even though ninja isn’t make, its ebuild should recognize and respect any -j parameter specified in the MAKEOPTS environment variable. That means you should be able to force a maximum of one job via MAKEOPTS=-j1. You can do this on a one-time basis:
MAKEOPTS=-j1 emerge -a llvm
You can also set this change globally/permenantly for all packages on your system by editing the MAKEOPTS= line in /etc/portage/make.conf.
However, if you set MAKEOPTS=-j1 via your shell or make.conf, the parallelization settings will be applied to all packages which emerge installs. If you want to apply it to just that one package, you can create the file called /etc/portage/env/sys-devel/llvm (create any missing directories if necessary) and place these contents in it:
MAKEOPTS=-j1
This will apply the variable only to the llvm package itself.
How to do this in the shell:
mkdir -p /etc/portage/env/sys-devel
echo MAKEOPTS=-j1>>/etc/portage/env/sys-devel/llvm
Ninja and MAKEOPTS
In Gentoo, because people rely on MAKEOPTS=-j«n» to control the number of jobs, various eclasses and ebuilds will map this variable’s -j parameter to the equivalent for the acutal build system in use. You can see this in eclass/ninja-utils.eclass (which is used by cmake-utils.eclass which is used by llvm). That snippet extracts just the -j parameter and passes it to ninja because ninja supports that parameter while it might not support other things people place in MAKEOPTS.
Disclaimer: I haven’t actually tested this with the latest llvm ebuild. Please comment if there are issues with this answer!