Me parece extraño también. También estoy desarrollando un juego, muchos niveles, puedo tener fácilmente 100 objetos de juego en la pantalla, no he visto un problema similar.
Utilizado correctamente, drawbitmap debe ser muy rápido; es poco más que un comando de copia. Ni siquiera dibujar círculos de forma nativa; Tengo mapas de bits de círculos prestados.
Sin embargo, el rendimiento de Bitmaps en Android es muy sensible a cómo lo hace. La creación de mapas de bits puede ser muy costosa, ya que Android puede escalar automáticamente los pngs que consumen mucha CPU. Todo esto debe hacerse exactamente una vez, fuera de su ciclo de representación.
Sospecho que está buscando en el lugar equivocado. Si crea y utiliza el mismo tipo de imágenes de la misma manera, duplicar el número de imágenes de pantalla no debería reducir el rendimiento en un factor superior a 4. Como máximo, debería ser lineal (un factor de 2).
Mi primera sospecha sería que la mayor parte del tiempo de su CPU se utiliza en la detección de colisiones. A diferencia de los mapas de bits de dibujo, esto normalmente aumenta como el cuadrado de la cantidad de objetos que interactúan, ya que cada objeto debe probarse para colisión contra cualquier otro objeto. Dobló el número de objetos del juego, pero su rendimiento bajó a un cuarto, es decir, según el cuadrado de la cantidad de objetos. Si este es el caso, no te desesperes; hay formas de hacer detección de colisión que no crecen como el cuadrado de la cantidad de objetos.
Mientras tanto, haría las pruebas básicas. ¿Qué sucede si no dibujas la mitad de los objetos? ¿El juego se ejecuta mucho más rápido? Si no, no tiene nada que ver con el dibujo.