In search of an idiom expressing explaining oneself and feeling ashamed on behalf of another person

I'd suggest answer for.

Cover for, as you say, doesn't go all the way. It's defined as making an excuse for someone or explaining why something has happened. It doesn't assume that you become responsible for it. You simply try to explain it and give a reason.

In contrast, I think you might be able to use answer for.

"I saw the director, and I had to answer for you (or your behavior or lateness) again."

Answer for means "to agree to be responsible for something". I think this might capture the anger element you mention, because when you agree to be responsible for something someone has done, you involve yourself, which can lead to embarrassment and quite possibly anger. It also, I believe, carries the implication that the person you're talking to -- the director in this case -- is upset with you and you are yourself in the position of being blamed.

So I think answer for is a stronger expression that may perhaps suit your purposes.