This example shows how easy it is for level gaps to open up in an RPG like Dragon Quest, which both relies on large experience drops from bosses, and tries to make boss battles extremely lethal. However, it is even easier for level gaps to appear in games where the player switches characters in and out of a party. This is an extremely common occurrence in the Fire Emblem series, where the player can only field a fraction of his army, and there are no chances to level up characters outside of story missions. The player is forced to pick a line-up of favorite characters, and then watch as the rest of the characters are left to become more and more useless as they fall further and further behind in level.
Even in games where the player can level up characters who fall behind, as is the case in most RPGs with party selection, it often involves level grinding. For example, if the player doesn't use certain characters in Final Fantasy VI for a while, he must then spend some time fighting random battles in the overworld or such to get them back up to the same level as the rest of the team. And in cases where it is impossible to swap out certain characters, closing level gaps can become a big problem.
The worst case of level gaps I have ever experienced was in Final Fantasy VIII. Because Squall could not be swapped out of the party, he ended up being almost twice the level of the rest of the six character team. This ended up being a bit of a problem, since the level of the monsters in FFVIII were based on Squall's level. I actually considered letting Squall die and leaving him dead for a while, so that I could bring my other characters up to match his. The only reason the other five characters could even compete was because levels did not matter much in FFVIII compared to the benefits of the junction system.
There are two main ways of eliminating level gaps. In the first method, the amount of experience a character receives is determined by the characters level relative to the enemy's level. A really good example of this is in Suikoden games, where a character can practically go from level 1 to level 30 in four battles against level 30 enemies. This method ensures that level grinding is never really a serious problem, even if a character does fall far behind due to neglect.
The second solution is making sure that characters can't miss out on experience by dying or not being in the party. At its lowest limits, this approach means giving characters outside of the party 50% or so of the experience gained by those in the party. This is extremely common in many Final Fantasy games and the like. At its highest limits, this approach means doing away with individual character levels altogether in favor of a unified party level. The only game that I know of that takes an approach like this is Chrono Cross, which rewards the player with Star levels for every boss beaten (which I am pretty sure are connected to individual character stat gains).
Level gaps can be a real source of annoyance and frustration for some players that are directly caused by elements of the game system design. So, there is no reason level gaps cannot be eliminated.