I don't really understand the decision (Yuki or Lawson would have been a great choice), other than maybe experience as a driver with this team when Max is leaving.
Or money.
Money definitely is a big factor I'd guess. Checo brings in a big part of the team's overall budget. Also he is embedded into the team by now and why try an unknown change when you don't have to?
Paddock rumours also say Horner didn't want to promote one of Marko's juniors on purpose.
To be honest, Perez was always a good driver. Perhaps RBR knows that the car isn't really where it appears to be, and it's Max that brings it there. Then another driver would not make a difference. And with Perez they know they will not have an intra-team war like Merc did with Rosberg and Hamilton.