Just a thought. As the issue mainly relates to the probability of users entering CCs without using the tools you are creating, why not simply remove the built in tools from the ribbon from your template and replace them with those accessing code from your template? Thus you have far more control over the titling and tagging of the controls you add. If your template is used as an add-in there should be no need to complicate matters by writing code to users' templates, which will not in any case be possible (or in a best case not easily) should the VBA projects those templates be locked.
As for writing code to the ThisDocument module of the documents created using functions from your template, you can do that from code stored in a Word document, or text file(s). Text is quicker but you cannot protect it from user interference so readily.
I did something like this at http://www.gmayor.com/interactive_multichoice.html recently, which employs code variations depending on the choice of options used. The following demonstrates writing code from a text file to an existing module in a document such as ThisDocument. Writing from a document is no more difficult and you can use bookmarked ranges to hold the different code options and write the range texts to the prepared documents.
Public Function AddVBACodeFromTXT(oDoc As Document, strSource As String, strModule As String)
'Graham Mayor - http://www.gmayor.com
Dim strLines As String
Dim i As Long, j As Long
Dim strCode As String
Dim iFile As Integer: iFile = FreeFile
Open strSource For Input As #iFile
strCode = Input(LOF(iFile), iFile)
Close #iFile
i = oDoc.VBProject.VBComponents(strModule).CodeModule.CountOfLines
oDoc.VBProject.VBComponents(strModule).CodeModule.DeleteLines 1, i
oDoc.VBProject.VBComponents(strModule).CodeModule.AddFromString strCode
lbl_Exit:
Exit Function
End Function