Wenn es im STK500 funktioniert aber im selbstgebauten nicht, würd ich mir mal gedanken machen.
Bei mir wurde noch nie ein AVR handwarm und ein Port geht nicht von alleine kaputt. Kann es sein, das du irgendwo einen Kurzschluss drauf hast?
Weswegen das programmieren nicht klappen könnte:
Versorgungsspannung schwankt zu sehr.
ISP defekt.
Chip defekt.
Fehler im Schaltungsaufbau.
Die Invertrer und Potis und was sonst am ISP mit dranhängt wird beim programmieren mit angesteuert. Und das meiste sicherlich mit Strom. Also fehlt der Strom evtl zum flashen.
Wenn das ganze in einer Schaltung wäre die eine große Maschiene steuert könnte es tödliche Folgen haben wenn sich beim programmieren auf einmal ein Motor dreht! Auch wenn es nur für den Hausgebrauch ist, man sollte sich sowas nicht angewöhnen. Wer weiss, was in 10 Jahren ist. Wenn man dann sowas beruflich macht muss man ansowas immer denken.

Da es im STK500 problemlos funktionier kann es also nur an deiner Schaltung liegen, oder dadran, das der AVR jetzt schon ne Macke hat (das PB1 nicht funktioniert ist ja nicht normal). Überprüfe nochmal dein Aufbau und mess mal die Stromaufnahme der Schaltung wenn sich die Motoren nicht drehen und auch sonst kein (großer) Verbraucher angeschlossen ist.