ttadej - There is no API(V1 or V2) call for getting different size of group avatar, The workaround you have been using is the only workaround as for now. However, you can make it easier.
<#assign avatar = getGroupAvatar("group-id" "print") />
${avatar}
<#function getGroupAvatar id size >
<#assign avatar = rest("/groups/id/${id}/avatar").image.url />
<#return avatar?split("profile")[0]+size />
</#function>
Pass the group id and desired avatar size e.g message, profile, inline, favicon, print and it will return you the avatar URL according to that.