Why is it so freaking difficult for Bethesda to fix a game they allow you to break way too quickly, and for absolutely no cost (not monetarily speaking)?
The fix is easy:
1. Scale difficulty off of level
2. Game checks level of improvements (Epic, Flawless, Legendary, etc) on gear and weapons and adjusts difficulty, damage output, resistances, armor rating and magic damages accordingly on top of any scaling from level
3. Game checks level of gear and armor rating and adjusts difficulty on top of #2 and #1
4. Game checks level of abilities and perks and further adjusts on top of #3, #2, and #1 (Mainly, this is because having 5/5 Barbarian turns the game into a cakewalk)
5. Game checks the Difficulty setting present (Adept, Expert, Master) and adjusts one last time
Your easy fix adds three more variables to scaling. Each one increases the complexity of getting the formula just right. Not to mention that they present their own unique challenges.
Do you look at item quality and improvement level for equipped gear, or all gear carried by the player? If the former, the system is exploitable (run around in low-quality gear, change your equipped items once the enemy level has been set). If the latter, the system needs factor in a number of complications. Do you take an average of all the items in their inventory? How do you know what the player uses and what is simply loot they pick up? Just the highest quality item? What if they looted amazing heavy armor but they only use light?
How about perk level—are all perks equal? Clearly, we can't have enemies scale up because someone maxed the Lockpicking or Speech tree, right? How do we compare the benefits of Sneak perks and Two-Handed Weapon perks? Do enemies scale up just because the player takes less falling damage in Heavy Armor? Are you assigning a "value" to every perk in your "simple" solution, or just trusting it to balance out. What about those who hoard perk points, then spend them once they enter the dungeon? Are you going to program a system that adjusts on the fly or let them cheese that one dungeon?
Also, if enemies become more difficult as you improve weapons or invest in perks like Barbarian, then you have effectively done no improvement whatsoever. How do you balance this to maintain an enjoyable experience for the player? After all, if they don't improve, they won't notice the difference, since that factor of enemy scaling doesn't apply. Are spawns randomized to keep low-level enemies in the mix so the player can actually see the benefit of their improvements? Or do the scaling boosts to enemies advance slightly slower than the player improvements? How do you fight against the effects of power creep (on either side) without limiting player choice and without making the player feel like they're running in place, especially in a system where so many separate elements are part of the formula?
In my opinion, the effect you describe (the game becoming too easy or too hard) is, by and large, unavoidable in RPGs. Unlike games such as shooters or platformers, where reflexes, coordination, and awareness determine player skill, RPGs tend to measure success and failure using the systems of decision-making and planning (perk choices, builds, etc.) and, at times, random chance (e.g., attack rolls). Some RPGs, Skyrim included, eschew randomness for basic action elements (aiming a bow, connecting with power attacks, block timing). But the decisions made while building your character still have a tremendous impact—make the wrong choice, and the game gets hard. If you boost Stamina on your mage, pick perks that work against your playstyle, or don't spend time making intelligent gear choices, you're doing it wrong. So, you need to make a system forgiving enough that some mistakes can happen. Go too far doing that, however, and someone who makes no mistakes, or exploits imbalances in the system to optimize their character will end up with a very easy game. Too far the other way, and there's a serious barrier to entry. What you're looking for is a system that can check, intelligently and thoroughly, for a players level of "min/max" and adjust accordingly. Maybe it's possible, but it sure as heck ain't as easy as you claim.