I take all my shirts to the cleaners. Â I've had no broken buttons in over 3 years. Â The cleaners I use definitely don't break buttons -- whether MOP or plastic.
Lucky man. Most commercial laundries just throw the body of the shirt into the press and press right on top of the buttons. Thus a big, heavy, hot metal sheet is pressing against them. This tends to break them if you do it often enough. Decent hand pressing goes around the buttons and only presses the placket in between.
If having shirts commercially laundered like this decreases the lifespan of my shirts, I can't tell. I think last year I donated one shirt that was just barely starting to fray at the sleeve cuffs
In my experience, fraying is caused less by washing and more by wear. And also by the density and quality of the cloth. Any 1x1 will fray more quickly than a 2x2. Really high yarn number clothes (200s) will also fray sooner, because the cloth is more delicate.