You have probably misunderstood me. Extending contract means staying for, say, 1 year and then changing clubs for a huge sum. Mbappe's current deal expires in 2 years, so I bet he will extend it to allow Monaco getting 100m+ fee whenever he decides to leave (for example, next summer). It's a good move, as it guarantees that:
1) the club he owes will get huge fee, with Mbappe leaving on a very good terms,
2) he will have an 'insurance' to be a starter for his next club, be it Real, Juventus or City. No coach would dare to bench 100m purchase, that's how it works.
As for City and Pep, don't forget that we're biased, and not everyone is obliged to share our fascination with Mansour's project. Let's be honest - City's profile is still far behind the big boyz in neutral person's eyes, we need to win our first CL at least to break this wall.
Edit: think Henry would give Mbappe the same advice, if asked (and he'll surely be asked) : stay for 1 year to mature a bit, then move to work with Guardiola.