Today I was writing an email calling somebody "eyewitness to" some event, but it was marked as incorrect and it was suggested I precede it with an article; i.e. an eyewitness, instead. But isn’t my usage also proper, being an instance of a predicate adjective? I think I intuitively used the form I did, having a strong recollection of encountering "eyewitness" being used in the same manner.
Your answer is correct.
Eyewitness is being used in an uncountable form. Here it should be understood as ~ "in the category of eyewitness."
There are parallels in such examples as
“He was party to the contract”
“She was teacher to the older children and nurse to the younger ones.”
"He was successor to Ferdinand of Austria.",
"He was heir to a fortune" etc.
For examples in context, visit Google Ngrams for the search terms was witness to,was eyewitness to,was teacher to,was successor to,was heir to