A migração pode ser mais problemática do que vale a pena. O IIS 6 tem basicamente as mesmas opções de reciclagem que o 7, e é provavelmente o que eu consideraria primeiro na sua situação.
Se estiver vazando memória, você pode implementar a reciclagem baseada no limite de memória.
Por exemplo: se o aplicativo eventualmente exibir 800 MB de bytes particulares, ele será reciclado. (Reciclagem cria um novo processo para substituir o antigo, depois termina o antigo).
Se o seu aplicativo não responder mal à reciclagem (a reciclagem causa uma perda de estado, por exemplo, estado da sessão, variáveis na memória, etc.), isso pode ser uma boa opção. Se ele é sem estado, você também pode olhar para configuração maxprocesses > 1 (um "web garden"), que teoricamente multiplicaria o tempo antes da falha pelo número de processos de trabalho. (isso assume que você tem n * 2GB de RAM para jogar nele)
Em caso afirmativo, seu aplicativo tem uma vida útil definida, implementando um intervalo de reciclagem mais curto do que aquele que funcionaria (por exemplo, reciclar a cada 1 hora).