Danny - can you give more information about the environment you are running on?
Can you test the throughout of the exact same setup with an in-memory channel, and give the resulting throughput, to ensure that this is indeed the bottleneck?
What are the access patterns of the disk that the FileChannel is using? Is it a dedicated disk? Or are there other processes reading/writing against the disk?
Can you give the configuration of the agent, including the sources and information about any batching taking place within those sources?