В этом суть STA, COM автоматически перенаправит вызов из вашего рабочего потока в поток STA. Так что методы COM-сервера всегда вызываются потокобезопасным способом. И если метод блокируется, это также заблокирует ваш поток STA. Обычно поток пользовательского интерфейса.
Это означает, что использование этого COM-объекта в потоке на самом деле ничего не дает. С другой стороны, реальная проблема заключается в COM-сервере, он не должен блокироваться. Убедитесь, что это не тупиковая ситуация.
Возможное решение - создать COM-сервер в другом потоке STA, чтобы, по крайней мере, ваш поток пользовательского интерфейса не блокировался. Проверьте этот ответ для образца кода. Вызовы Thread.SetApartmentState и Application.Run имеют решающее значение для создания гостеприимного дома для сервера.