Unfortunately, that is backwards, and problematic. The intent (and proper operation) is to send an
HTTP/1.0-compatible request, detect the server understands 1.1, and switch to sending 1.1-compatible
From RFC 2145, section 2:
"One consequence of these rules is that an HTTP/1.1 message sent to an
HTTP/1.0 recipient (or a recipient whose version is unknown) MUST be
constructed so that it remains a valid HTTP/1.0 message when all
headers not defined in the HTTP/1.0 specification  are removed."
By sending the unknown (to a 1.0 server) Transfer-Coding: chunked header, you break this rule. The
request is not a valid 1.0 message.
We know that the first request is an OPTIONS request, which is small and easy to serialize in order to get
a 1.0 Content-Length header.
In libsvn_ra_serf/util.c:handle_response(), right after you parse the status-line, you can set the 'http10'
flag to FALSE if you find a more recent version of HTTP. All following requests will then use the chunked