Hi,
If you want free orders to be automatically confirmed, you need to activate the "validate free orders" plugin via the Joomla plugins manager.
Regarding the tag {LINEVAR:product.personalmessageitem}, you're saying that your custom field is of the table "item".
In that case, your tag should be {LINEVAR:item.personalmessageitem}
Also, LINEVAR tags can only be added between {START:PRODUCT_LINE} and {END:PRODUCT_LINE}
You placed it outside these tags, so the system won't be able to display the value.
I would rather recommend to place it after the tag:
{LINEVAR:PRODUCT_DETAILS}
Note also that the system can already display custom item fields in the emails with the email display settings you can see when you edit the custom field via the menu Display>Custom fields. When you activate these email display settings, the custom fields will be displayed by the {LINEVAR:PRODUCT_DETAILS} tag, so in that case you actually don't need to do any email modification.