If the goalie charges out then you need 2 defenders back so that the striker is onside. Benzema was in an offside position due to Allison coming out to make a block.
The argument is whether Fabinho deliberately played the ball, which I believe he did, and that's where the controversy is. If an opponent plays the ball then the striker is played back on side. If it is a deflection then he is still offside, like how accidental handballs don't get given.
So they determined that Fabinho, in the act of making a tackle, did not deliberately play the ball. Even though he went for the ball and won the ball. It bounced off a Madrid player and on to his trailing knee so they then determined that a deflection making Benzema offside.
Honestly I think they deliberately make the rules complicated so they get the benefit of doubt when they want to interpret a rule in whichever way suits them. Like with the afore mentioned handballs and the stupid t-shirt rule. For me, if your arms are raised and the ball would not have hit another part of your body then you have committed a handball, it needs to be a cut and dry rule like that. There should be special consideration for when attackers deliberately attempt to play the ball off an opponents are to gain a foul. Same as when forwards stick a leg out in an unnatural way to draw a foul.
The rules are crap, they're deliberately complicated and it always always benefits the biggest and wealthiest clubs.