У меня была та же проблема, но мне удалось ее исправить, подавив заголовок «Expect: 100-continue», который обычно отправляет cURL (ниже приведен код PHP, но он должен работать аналогично с другими API-интерфейсами cURL):
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Expect:'));
Кстати, я отправляю вызовы на HTTP-сервер, входящий в состав JDK 6 REST, который имеет всевозможные проблемы. В этом случае сначала отправляется ответ 100, а затем с некоторыми запросами неправильно отправляется последующий ответ 200.