Ok, eu achei! Aparentemente, o processo foi preso em um loop while, porque ele escuta comandos em stdin.
Os picos de CPU estavam sempre lá, mas nós nunca notamos (até que fizemos um teste maior com mais pessoas no site), então depois de pesquisar, descobri que você pode fazer isso para "fechar" o stdin para garantir que não Continue lendo para dados em segundo plano:
read x < /dev/fd/1 | <command>
Onde comando é o seu comando que está aumentando a cpu.
Para mim, o comando completo foi:
cd /opt/SteamBot && read x < /dev/fd/1 | mono --debug SteamBot.exe
A CPU agora caiu para 7%;)