Можно ли a вкладывать в button?
имдем в спецификацию
https://www.w3.org/TR/html51/
или в её перевод на русский
spec.piraruco.com/html5/forms.htm#the-button-element
что можно вкладывать, указано тут
тыкаем на группу и смотрим что входит во фразовое и интерактивное содержимое
Можно, но проще сделать ссылку в виде кнопки или присвоить button role=link и через js указать путь для перехода.