Ein Widerstand von 100 Ohm gegen 5 V ist zu niedrieg ! Die Ausgängen sollten maximal 20 mA Vertragen. Ohne einen Pullup geht der Transistor auch nicht.
Der extra Transistor würde einen etwas besseren Schutz für den µC geben, aber hinsichtlich Fehleranfälligkeit wäre das eher ein Rückschritt, denn die Schaltschwelle liegt dann bei etwa 0,7 V statt 2,5 V. Der AVR hat am Eingang sogar etwas Hysterese.