The redistributable isn't the issue, the headers and import libraries are. msvcprt headers, SAL, atomics, vcruntime.h, etc are all provided through the MSVC ToolSet. This also includes the low level C headers (e.g. stdint.h). The import libraries vcruntime.lib, msvcrt.lib, etc are part of the "vcruntime", which is part of the toolset.
vcruntime does not call into ucrt, ucrt calls into vcruntime. You don't statically link in vcruntime and dynamically link in ucrt. I'm not sure I see how this is ABI and not a dependency.