Почему при использовании технологии БЭМ не работает flex?
Не понятно, причем здесь флекс и БЭМ
Обычные азы

<div class="header__phone">
   <a href="tel:+74999228974">
      +74999228974
   </a>
   <button class="button">заказать звонок</button>
</div>

Два строковых элемента всегда будут расположены в строку
Хотите вертикально - нужно это переопределить. Например, ссылку обернуть в блочный элемент (div) или стилями задать display:block ссылке и/или кнопке.
Ну или для .header__phone указывать флекс и вертикальное направление.
Потому что вы указали кнопку и телефон в классе header__phone, для которого не написали никаких правил.