This is perfectly correct, acceptable and even fairly common. But I can see why you're confused, and I'm also having difficulty finding references to this exact expression!When the runaway slave was caught, not only did the slave face almost certain death, but the rest of the slaves on his plantation were often witness to his execution and were punished themselves.
Obviously, if the sentence said "were often witnesses to," it would clearly be a noun. However, because witness is singular and follows a linking verb, I guess it must be an adjective....
I think that the best way to consider this is as an idiomatic expression, "to be witness to" (with the same meaning as the verb "to witness"), and not worry about the part of speech! (Maybe someone wiser than I can contribute some more information about it!
Student or Learner