Layout и Bem. Что к чему?
Насколько правильно, если Layout__rowHeader вынести из layout.css в header.css?
Layout__row Layout__rowHeader

— Ни на сколько. Если Layout__rowHeader «ближе» по стилизации к Header, его лучше вообще удалить, а стили перенести в header.css

Вообще, разделить на слои всё, это есть хорошо?

Хорошо, но если композиция действительно увеличивает переиспользуемость, уменьшая связанность между компонентами.

Насколько правильно так верстать: https://codepen.io/git2ss/full/jOMwKWz

От БЭМа тут только классы «через чёрточку»:
1) Header__row, Body__row и Footer__row объявлены вне своих блоков (элементы не должны существовать за пределами блока)
Насколько правильно, если Layout__rowHeader вынести из layout.css в header.css?
Layout__row Layout__rowHeader

— Ни на сколько. Если Layout__rowHeader «ближе» по стилизации к Header, его лучше вообще удалить, а стили перенести в header.css

Вообще, разделить на слои всё, это есть хорошо?

Хорошо, но если композиция действительно увеличивает переиспользуемость, уменьшая связанность между компонентами.

Насколько правильно так верстать: https://codepen.io/git2ss/full/jOMwKWz

От БЭМа тут только классы «через чёрточку»:
1) Header__row, Body__row и Footer__row объявлены вне своих блоков (элементы не должны существовать за пределами блока)