I’ve had to do a workaround on this. I added two custom fields if it’s a company for first and last name of contact. Then in the email source code, i add a conditional to show either the regular individual first and last name or the custom first and last name.
<#if customer.isperson?? && customer.custentity_comp_first_name?length !=0><span style=“font-family:Arial,Helvetica,sans-serif;“>Dear Dr. ${customer.custentity_comp_first_name} ${customer.custentity_comp_last_name},</span> <#elseif customer.isperson?? && customer.custentity_comp_first_name?length = 0 && entity.firstName?length !=0><span style=“font-family:Arial,Helvetica,sans-serif;“>Dear Dr. ${entity.firstName} ${entity.lastName},</span> #else<span style=“font-family:Arial,Helvetica,sans-serif;“>${customer.companyName},</span></#if>