O seu Tomcat está configurado para reimplementar automaticamente os aplicativos que são descartados na pasta do aplicativo? Você usa essa funcionalidade?
Se você usar essa funcionalidade, existe a possibilidade de que a quantidade de memória usada no espaço do PermGen vá aumentar. Isto pode acontecer devido a aplicações (mal escritas) que de alguma forma mantêm referências às classes carregadas vivas. Cada vez que há uma redistribuição, a quantidade de memória usada no espaço do PermGen vai aumentar até transbordar.
Se você não usar essa funcionalidade e sempre tiver o mesmo aplicativo em execução no servidor Tomcat, tente executar o Tomcat com as configurações padrão para o espaço PermGen. Se o aplicativo for carregado e funcionar bem por algum tempo, ele deverá ficar bem. Se o aplicativo ficar sem espaço PermGen, basta aumentá-lo em etapas até que o espaço PermGen seja grande o suficiente.
Por que ele foi configurado para 256m (como visto em sua outra pergunta) em primeiro lugar?
Btw, sim, há uma correlação entre a quantidade de classes carregadas e a quantidade de espaço necessário na área do PermGen. Então, sim, quanto mais código for carregado, mais espaço no PermGen você precisará.