Imbalanced class with same rows?
The further exploration of your data would help. Are there, for example, some clusters where relative frequencies of your classes are much different from average?

Now I see two ways to increase sensitivity of your algorithm toward class 2:


Use probabilistic prediction. Maybe what you really need is to estimate the probability that the current example belongs to class 2. If identical observations are sometimes marked as 0 and sometimes as 2, you cannot do much better then say "with probability X this is the second class".
Use class_weights and increase them for class 2. This will lead to more predictions of 2 and less predictions of 0 and 1. With imbalansed datasets it sometimes helps.