The expected throughput from the distributed cache is definitely possible. Can you please share your tc-config.xml, ehcache.xml , client/server JVM arguments and some hardware details of the test you are currently running.
Changing the consistency to eventual in your ehcache.xml would help as a first step, In the latest builds, the updates are readily available across the nodes quickly even while using eventual consistency.
If you can share some more details about your use case, We can suggest few more things. You should try using Big Memory on your L2's (Use trial licence) with persistence in 'temp-swap' mode and you should see considerable increase in your throughput.