Wenn man multiplexing mit PWM kompinieren will, muss man fast zwangsläufig Software PWM nehme, denn man muss das PWM Signal mit dem Umschalten der LED Gruppen kombinieren. Außerdem ist software PWM bei den niedrigen Wiederhohlfrequenzen für LEDs kein Problem mehr.

Gerade bei so vielen LEDs sollte man Multiplexing (auch Matrix genannt) nehmen. Man braucht dann wesenlich weniger Treiber und auch das Verdrahten der LEDs wird einfacher. Ein Ausgang mit Treiber kann dann etwa 5 bis 10 LEDs ansteuern. D.h. für 300 LEDs wären z.B. 30 Treiber nötig die nacheinander je eine von 10 LEDs Ansteuern. Dazu dann noch 10 kräftigere Treiber für die andere Seite. Andere Kombinationen gehen natürlich auch. Dazu sollten dann schon 2 oder 3 Controller ausreichen, mit einem wird es wohl etwas zu knapp, eventuell auch schon mit dem RAM.

Als interface zwischen mehreren Controllern wäre SPI wahrscheinlich wesentlich besser geeignet als UART. Per SPI kann nähmlich ein Master and mehrere Slaves Daten schicken und es geht auch deutlich schneller.
Woher sollen denn die Daten kommen ?