Это обычный анти-паттерн, когда класс становится "слишком толстым" (имеет слишком много функциональности и связанного состояния), и хотя это обычно наблюдается в отношении "базовых классов" (откуда прозвище "толстый базовый класс" для анти-шаблон), это действительно может произойти без какого-либо наследования.
Множество шаблонов проектирования (DP для short_ могут помочь вам переориентировать ваш код, чтобы свести большой, непроверяемый, не поддерживаемый «толстый класс» к хорошему пакету взаимодействующих классов (которые можно использовать через DP «Facade» для простоты). ): рассмотрим, например, State, Strategy, Memento, Proxy.
Вы могли бы атаковать эту проблему напрямую, но я думаю, тем более что вы упомянули в комментарии, что рассматриваете ее как общую тему дизайна класса, она может предложить вам хорошую возможность углубиться в очень полезную область шаблоны проектирования и особенно «рефакторинг к шаблонам» (книга Фаулера под таким названием превосходна, хотя она не затрагивает вопросы, связанные с Python).
В частности, я полагаю, что вы сосредоточитесь в основном на нескольких структурных и поведенческих шаблонах (поскольку я не думаю, что вам особенно нужны креационные шаблоны для этого варианта использования, за исключением, может быть, "ленивой инициализации" некоторых из ваших дорогих - для вычисления состояния, которое требуется только в определенных случаях - см. эту запись в Википедии для довольно исчерпывающего списка DP, с классификацией и ссылками для дальнейших объяснений каждого из них).