I think Bernardo Silva has become extremely overrated on this forum. Don't get me wrong, he's a very good player who would definitely improve us, but his productivity is on the same level as Mata. Silva is defensively stronger, and definitely better than Mata at running with the ball, but stylistically, they're quite similar. I think if you put Mata in that Monaco team, he would stand out in the same way.
Need wise, I think Fabinho makes the most sense for us but due to Mbappe's potential, I would go with Mbappe.