Reduced Ownership Can Be Seen as an Advantage
Pair Programming, especially when you switch partners often, in the context of an agile team is designed, in part, to enhance collective ownership. This reduces silos of knowledge (said another way: increases your project's "truck number") and reduces the attitude of: "this part of the code is poor, but it's not my problem because I don't own it". On the other hand, agile teams choose as a team to pair program because they believe it works best.
Pair Programming Increases the Team's Average Skill / Experience Level
When programmers pair, knowledge, skill, and experience are transferred between team members. This transfer tends to be bi-directional, unless there is a significant mismatch, like in your case. Then it tends to be one-way. That's one of the reasons agile teams switch pairs often.
Forcing People, Especially Programmers, is a Concern
Forcing a practice on people, even a good practice, is a problem in itself. This tends to be especially bad if you are forcing programmers.
If You Can't Work Out People Problems, and You Can't Live With Them, Someone May Have to Go
Certainly personalities can cause friction during pair programming. But if people can't work it out maturely, then my view is it's a people problem, not a practice problem. There are still devs that strongly prefer working alone and "owning" parts of a project. It can be difficult to convince them to work otherwise. If it can't be worked out, then it either festers, or someone leaves voluntarily, or someone is let go.