Advice on what Machine Learning Algorithms to study for a Job to candidate matching algorithm
Very likely, there is too much noise in the data. Meaning there are hidden pieces of information that are dominating the decision for acceptance or not, which you don't find in the data. For example, if the client finds the consultant sympathic. Or if the client had a good day when deciding about the consultant.

I doubt that the rule system is overly complicated, so my advise is to stay with it.

If you want to get started with machine learning, look for MNIST examples (a handwritten digits dataset) and I recommend to use Keras with Tensorflow as a Backend.

(by the way: I'm a machine learning ;-) )