We are a small host but our market allows us to offer only yearly plans, and we do offer free domain names with any hosting plan. Offering this on a monthly plan I believe would be too risky, from a web host standpoint. If clients asks for a refund then it means you are basically losing the amount you paid to register for the domain name.