In many unbalanced situations you simply can't have an unbiased decision that's fair across all measures, no matter if the decision is done by a model, a human or a deity; you have to trade off between different types of unfairness. Equality of opportunity for individuals will result in unequal results for groups; equality of outcomes requires unequal opportunities if the historical circumstances have resulted in socioeconomic unequalities.
In your financial evaluations example, many biases and disadvantages would remain even if you solely reduce the decision to relevant financial facts for a specific individual, because a poorer individual with lower socioeconomic status and less opportunities actually has a higher risk of non-payment, and a disadvantaged group will have disproportionally more such individuals. Should we accept that? Should we require the other groups to subsidize their non-payment? Both options are unfair in some aspect and fair in another, you can't have your cake and eat it too, and it's not the fault of the model you use - the only difference with a human is that they can better hide the factors they use, lie about the influences (perhaps also lie to themselves) and rationalize/invent factors to justify their decision.
For this topic, perhaps this talk "AI Ethics, Impossibility Theorems and Tradeoffs" https://www.youtube.com/watch?v=Zn7oWIhFffs or its slides https://www.chrisstucchio.com/pubs/slides/crunchconf_2018/sl... might be interesting for you, it has some flaws but is a decent exploration of the problem space.