I found this, not sure how true it is.
Thomas Becket was never called "Thomas a Becket" during his life, nor for many hundreds of years after his death. It is a later mistake and should be treated as such.
He was born in England in 1118 of noble Norman parents; his father was Gilbert Becket, who was possibly sheriff of London. Thomas was most often called "Thomas of London" during the early part of his life.
In Anglo-Norman French, the language he would have used among his own family, the word a can mean at, in, located in, on, against, around, to, as far as, towards
. . . and many more prepositional meanings. If he had been Thomas a Becket, then the element Becket would have to be a place-name, in order for the a to make any sense.
The problem is that there is not (and has never been) a place in England called Becket, so Thomas a Becket is not a sensible or feasible name for anyone to have.
He was plain Thomas Becket and that is how he should be known everywhere today.