OP, I don't in the least blame you for becoming emotional, and I don't think that it was wrong. Teachers are professional people, of course, but they work with children and parents, so they are working in the 'personal' sphere. They should be aware that professional decisions they make have huge impacts on people's personal lives and personal development. (My mother, for instance, was profoundly affected by her headmistress's decision to refuse to allow her to apply to university on the most spurious grounds possible.)
I'm absolutely horrified by how the teacher behaved, and I'm very glad indeed that your son has been transferred to someone who can actually help him.
I do think you were probably wrong to bring up the issue of her motives for taking the job, but in the circumstances, I think you can be excused. In your place I might very well have blurted it out too.