LLVM is a library that happens to have Clang in front of it, whereas GCC still isn't really able to have multiple targets in the same binary.
Could probably be done but for actually assembling toolchains you generally only need one anyway so it's not that annoying most of the time.
Not if you intend to ship on multiple platforms. Having to run builds on the native platform or install a separate cross-compilation toolchain is incredibly annoying (and difficult to get right to the point that it's common to not even try). It would be a big usability win if C toolchains could get cross-compilation to Go or Zig levels of "just works".
The most likely reason in your case is the build system of the library you want to build uses some mix of POSIX shell script and GNU Make, which is ... hard to get right on Windows. It's not C/C++ specific, through installing a cross C compiler on Windows might involve more work than rustup add target (or not, if someone did the work and packaged the toolchain as .exe installer).
clang-cl[1] does.
The only thing missing are some atomic library calls.
Optional and not expected to be supported by every compiler out there, otherwise they would be part of ISO requirements.