Of your list have only eaten at San Angel Inn.
It was great. We loved the food, the atmosphere and the service was spot on.
That would be my choice.
I don't care for the foods served at the other 2, is why I haven't been.
But my advice would go to the menu that appeals to you most.