I ran into this same situation, but the documented workarounds did not fix the issue. I worked with ESRI support to resolve the problem and wanted to share my additional steps in case others are in a similar situation.
I first tried enabling IPv6 on my server. Although the box was checked, my organization was not routing IPv6 (I'm not sure if simply checking the box is enough or if the traffic needs to go through IPv6). I then tried performing the registry edit. The command prompt returned this:
registry edit command prompt
I checked in the registry editor and there was a "DisabledComponents" entry, but it did not match the <0x20> description specified by Microsoft. I edited the hexadecimal value and changed it to 20. Restarting Server after all these changes did not fix the issue.
I then followed this Microsoft documentation to verify if IPv4 was being preferred. The "netsh interface ipv6 show prefixpolicies" command indicated that the '::ffff:0:0/96' prefix did not have a higher precedence than the '::/0' prefix.
netsh results
Because IPv4 was still not being prioritized, ESRI Tech Support shared this documentation to change the priority via command line. I ran this series of commands:
netsh interface ipv6 set prefixpolicy ::ffff:0:0/96 50 0
netsh interface ipv6 set prefixpolicy ::1/128 40 1
netsh interface ipv6 set prefixpolicy ::/0 30 2
netsh interface ipv6 set prefixpolicy 2002::/16 20 3
netsh interface ipv6 set prefixpolicy 2001::/32 5 5
netsh interface ipv6 set prefixpolicy fc00::/7 3 13
netsh interface ipv6 set prefixpolicy fec0::/10 1 11
netsh interface ipv6 set prefixpolicy 3ffe::/16 1 12
netsh interface ipv6 set prefixpolicy ::/96 1 4
After setting the prefixpolicies, I ran "netsh interface ipv6 show prefixpolicies" to verify that the changes had taken effect.

After confirming that IPv4 was indeed being prioritized, I restarted Server in services and was able to publish to a hosted feature layer from an uploaded shapefile without issue.