БЭМ вносит порядок в код, что уже отлично, позволяет переиспользовать различные части кода. Что касается вашего примера, это конечно перебор, я думаю от бэма здесь только наименование, хотя у меня тоже бывает встречаются блоки, у которых может быть несколько модификаторов, и соотвественно простыня классов, но это удобно на самом деле. Вам как back-end - щику должно быть до лампочки 2 класса у кнопки или 4, скопировать и вставить, фронт частью должен заниматься другой человек, что касается движков, то это скорее проблема движка, если на него нельзя натянуть любой HTML код, имхо.