Почему не советуют писать await после return в функции?
Потому что нет try catch конструкции, а это уже deprecated по умолчанию..
Во втором случае вам промис вернётся и уже за функцией можно обрабатывать ошибку. В противном случае у вас двойная обработка(как минимум) получится
return await promise
"разворачивается" в 
return promise.then(result => result);
Зачем оно вам надо?

И плюс если в функции нет ни одного await, то async ей тоже не нужен, меньше текста, меньше нагрузки на программиста и компилятор.