Instead of the zero-width div, you could set up an event listener for the copy event (using addEventListener() method) which calls .clipboardData.setData() on the ClipboardEvent to change it to your modified code.
That should avoid messing things up for people with screen readers while still trapping the copy+pasters.
There's an easier fix. Have the candidates state if they have a vision disability first and then send them down a different pathway for validation. There aren't that many, so it's not going to be costly or anything.
That should avoid messing things up for people with screen readers while still trapping the copy+pasters.