Недавно столкнулся с подобной проблемой (Jade + Ractive).
Не нравится ему each, он считает, что это евонный, джейдовский each.
Поправить можно так, как вы сделали, или так:
template(name="postsList")
.posts
| {{#each posts}}
| {{> postItem}}
| {{/each}}
Более симпатичного способа я не нашел, к сожалению.