Number of LMTP threads should be changed in LDAP - not local config.
Code:
$ zmprov mcf zimbraLmtpNumThreads 50
$ tomcat stop
$ tomcat start
The number of concurrent LMTP deliveries that postfix will do is dictated by postconf lmtp_destination_concurrency_limit, which defaults to 20. The zimbra server side default is 8, so there is definitely a bug here - which I have fixed post 3.0.0_M2.
Message delivery does take a lot of CPU, and 4 concurrent deliveries should give the system enough work to do - if they don't that's a different bug - something else is wrong. There is should also be no delay between deliveries unless messages in the queue have been deferred and are waiting for retry at a later time.