The problem seems to be that it's paid for training, not on the job training, and needs to be verifiable. If so decided to pay to get your staff their HGV licences, it would be reasonable to protect against them getting many thousand pounds worth of training, that they have in their name, and then clear of to work for somebody else, using your money! Other training is really just on the job training. If you are going to consider charging it back, then it also has salary implications. Was it a benefit in kind (presumably yes, if it was not charged for, and is transportable) so should this not have been 'removed' from their pay for calculation purposes? It also needs to be communicated to them when it happens. "You are starting a course next week, and you may have to pay £2300, which is what it's costing us, if you leave within X period". You can't send them on a course and then tell them about the £2300 when they decide to leave, and you invoke the clause. What happens if you tell them they're on a course worth £2000, with the leaving implications, and they say no - they will stay as they are, thanks? If you make a course compulsory, then it can't be charged back - because it was your choice not theirs?
Difficult. If you need a first aider, somebody has to go on the course. Is it then fair to charge that back - because it is a benefit to them, but also a benefit to everyone else.