The value of the Content-length header has to be the length of the message-body, not the string "length", which doesn't mean anything.
Look, I'll say this once more: Trying to create a SOAP request by hand is a bad idea. It's an especially bad idea if you don't understand the HTML and SOAP specifications.