Exactly Carlos, getting vendors to do the right thing is often more of a project than the actual project. We have many vendors that we end up just working around problems for that very reason.
I don’t think checking if the field is text or not will work, because you still wouldn’t know if the & is supposed to be a delimiter or part of the field. The engine cannot know that.
I would suggest an appropriate workaround for this would be Vince/Charlie’s solution, assume that certain fields would not have an & delimiter, and use a regsub to replace them (in that field only) with another character.