If you don't mind, I'm going to put the whole lineup here.
9 players in the roster
Starters:
PG: Vasquez
SG: Toupeira
SF: Ghiberti
PF: Gutierrez
C: Oliveros
Backup:
PG: Žibutis
SG: Toupeira
SF: Dozier
PF: Alas
C: Alas
Reserve:
PG: Žibutis
SG: Toupeira
SF: Dozier
PF: Albano
C: Alas
So, here's what happened, and bear in mind that the reserve lienup does not mean it has to be followed to the letter in garbage time. When garbage time started, the coach was looking for players to replace the starters. A couple of the backups were set (Žibutis, Dozier, Alas at PF and C), and the coach put them in. Notice that Alas had to be set at two positions. He decided he'd do more good at C. Two positions were left with starters (SG with Toupeira and PF with Gutierrez). He's now looking for replacements for them and on the bench, there's only Albano. For some unknown reason (which is a bug), he decided to use Albano on the SG position. He wasn't looking at the reserve lineup, he was just looking to rest the starters. He then proceeds to rotate a couple of starters on the PF position and the rest is history.
This is definitely a problem in the game engine coding. I'm sure you know how complex the GE is, and it has it's imperfections, so I'm not running away from that. Fixing this code will probably take a long time and I'm not going to sugar coat it, it's hard, it's needs lots of testing and it probably not going to happen this season but eventually we'll fix it.
Until then, there is no other solution but to prevent such situations by setting different backups for all positions but the ones you need players to play 48 minutes on. I this case, setting Albano as a backup on PF would prevent the ensuing mess with player rotation.
I'm aware that this is not what you wanted to hear, but at the moment, it's the best I can do.