Just do the merges in sequence. We do this "synchronized" so that even if the application is using multiple threads, only one merge may run at a time.
SerialMergeScheduler Class | Lucene.Net.Index Namespace