If I remember correctly Elasticsearch will first read the document from the shard during an update and then perform the update and write it again. When doing this it will verify that the document has not been changed by checking the version number when writing and this is what leads to conflict with frequent updates. As far as I know there is no way to completely disable this behaviour.
Elasticsearch has as far as I know never been optimized for frequent updates, which in addition to the issues mentioned above also can result in a lot of small segments which is inefficient and can cause a lot of overhead and be slow.