I started out writing an entire wall of text, but realized I was rambling so I'll try to condense it a bit. Enchanter charm was too strong, but I feel the pendulum swung far too much the other direction. The entire point of classic charm was risk vs reward, but that no longer really exists. It seems mostly risk and no reward considering the damage output is so severely nerfed. Why bother charming something that at best will do 25% more damage than your own pet, but when it breaks it immediately remembers it can suddenly do 4x the damage back to you. It simply isn't worth the cost when you can just summon a standard pet and then use your excess mana to blast the target mob. This change essentially guts charm to the point of being mostly useless. At a minimum there should be a debuff on a mob when charm breaks so it doesn't immediately get it's full damage capabilities in an instant. If being charmed means your mind is taken over, then breaking charm should have them in sort of a mental fog state where they need 30 secs to go back to normal. That gives you a chance to recover before all hell breaks loose. This is not my main point though, I have an idea that I think would be a better solution.
Instead of enchanters being a pet class that can also charm... instead combine those ideas into a new form. Enchanters no long can summon their own pet but instead their charmed target becomes a way to have a temporary pet that is in line with other pet classes. Instead of charm being a spell, it should become an actual skill with a longer cooldown. In essence enchanters should just get a MnM version of dire charm with specific limitations. It may sound broken, but in reality it seems quite fair. Keep in mind right now a charmed pet only does 25% more damage than other pets, but the risk is so incredibly high that most people won't bother with the headache. This change would allow enchanters to keep their class fantasy of being able to charm NPCs, but those charmed pets fall in line with other pet classes. The benefit is where other pet classes are limited in what their pets can do, an enchanter can choose what long term pet they want for the situation at hand.
The balance is that they can't bring that pet with them into other zones. They can't heal that pet like other pet classes can, other than bandaging, but pet classes can do that on top of their heal so they still remain superior. This charm ability would have a longer cooldown so you are punished if you have to zone suddenly, or play badly and let your pet die(which isn't hard if you can't really heal them in a pinch).
TL;DR
Combine the idea of charm and "pet class" into a hybrid. Charms now become temporary pets that are weaker, but can't break like normal charm. The idea being they give up the ability to charm things that can out damage other pets, but the benefit is you no longer have the big risk that classic charm used to require.
Enchanters no longer have summonable pets.
Charm is now a long cooldown ability with strict limitations that replaces the ability to summon pets.
It can't break, but damage is normalized with other pet classes.
Duration is permanent in that zone or until pet death, your death, logging or zoning. If this feels too strong, then make it last a set duration but your cooldown always refreshes before the break, so you can choose to use again or let it break.
Pet damage falls in-line with other pet classes so there is no longer the chance for insane DPS.
Unlike other charm abilities from other classes, enchanters can charm any type of mob except for named and PHs so they can't lock down a named spawn.
Give enchanters a command skill similar to BM(and now elementalist), where they use mana to cause their "pet" to do an ability.
Make different types of charmable mobs have different abilities. Some just have an extra attack for dps, some may have more of a utility(stun, root, slow) so that enchanter can cause their charmed pet to do something specific instead of just mob AI choosing. For stronger utlity option, give it a longer cooldown. DPS being the shortest and most spammable where something like a stun or root would be more situational.
This can all be worked out, but now enchanters can add some very controlled and welcome DPS to a group, while retaining their role as support.
Balancing can easily be achieved by:
Limiting mob dps to similar values to standard pet classes. No need for extra damage.
Having a long cooldown so careful play is required. If you play sloppily you may lose your pet and have to wait for a cooldown to get another.
Require a component for long term charm that is more costly that other pet class components. An elementalist can summon 20 pets in a row for dirt cheap, BM can res for a small mana cost, etc.. while enchanters have to cough up bit more to use their charm.
The innability to heal other than using bandages already puts enchanter at a disadvantage to other classes who do have the ability to heal their pet. Yes bandages work, but they also work for other pet classes so they effectively have multiple ways to heal compared to enchanters.
As mentioned above, named NPCs and their PHs should not be on the list of charmable mobs to keep people from effectively locking other players out of the ability to hunt these mobs.
I could go on, but the basic idea stands. Enchanters are no longer a pet class, instead they have long term, but lower powered charm that doesn't do any more damage than other pets. Give the class some flair by adding a specific command skill that each type of pet has. This is more on the lines to morph the now defunct enchant ally into a special attack that enchanters can use as a useable command skill, thus giving enchanters a more strategic choice in what they want to grab.
This is already way longer than intended and there are a ton of options, but I feel this is a good way to allow enchanters to experience the class fantasy of charming mobs, without the devs having to choose between "overpowered" and "gutted". Charm is now just a class skill that allows enchanter to take temporary pets that aren't stronger than other pets, but gives them the ability to choose which pet they prefer for any given situation.