evhttp: Fix failure to send all output data for POST/PUT requests

Issuing a POST or PUT request with an output buffer that has enough data to cause an EAGAIN will cause the underlying bufferevent on the evhttp connection to start listening for headers before the rest of the output data is sent. The server/endpoint would then sit waiting for the rest of the data and the client will eventually timeout causing the request to fail.