Using merge text (<<FieldName>>) isn't really a factor here. You get the same results if you place the field on the layout with the layout tool as well.
Values entered into a field by clicking boxes in a check box group will be separated by a return character and they will be listed in the order that the check boxes were clicked--not the order of the values in the checkbox group value list.
You can define a calculation field as:
Substitute ( yourCheckboxFieldHere ; ¶ ; ", " )
Then put the calculation field on your layout in place of the checkbox group field.