In Solr 7, and previous versions, the both the socketTimeout and connTimeout defaults in solr.xml have accepted 0 as values. This is even documented in the ref guide. Using these same defaults with Solr 8 results in timeouts when trying to manually create replicas. The major change here seems to be that the Http2SolrClient is being used instead of the HttpSolrClient used in Solr 7 and previous versions.
After some digging, I think that the issue lies in the Http2SolrClient, specifically here. Since the idleTimeout is set to 0, since that is what solr pulls from the solr.xml, the listener immediately responds with a timeout.
The fix here is pretty simple, just set a default if 0 is provided. Basically treat an idleTimeout (or socketTimeout) of 0 the same as null. The ref-guide should also likely be updated with the same defaults as used in the solr.xml packaged in Solr.