Instead of a flat limit, vary the time and sacrifices required as more items are attuned. Then you must make a Cha check after the interval, rather than it being a flat limit on numbers. Also move up the chart for more rare items, down for sacrifices.
Perhaps:
- 1 minute
- 5 minutes
- 10 minutes
- 20 minutes
- 1 hour
- 3 hours
- 6 hours
- 12 hours
- 1 day
- 3 days
- 1 week
- 2 weeks
- 1 month
- 1 season
- 1 year
Each item is worth a number of spots on the chart based on rarity: 1 for common, 2 for uncommon, 3 for rare, 4 for very rare, 5 for legendary, and 6 for artifacts. Find the value for all the items to which you are currently attuned, and also the item to which you want to attune. That's how long it takes before you can make the check. (You can do other things in the meantime.

)
So Joe the Fighter finds a very rare sword (4). He already is attuned to two common items (1 each) and one uncommon item (2). 4+2+2=8, or 12 hours to make an attunment check.
Sacrifices would be some nasty chart of guidelines, occasionally with hints in the particular items (of Vecna), that subtract from this number. The maximum on the chart is 15. So once you get to over that on an attunement check, you must make sacrifices to lower it.
This explains why a farm boy can pick up a legendary sword and have it recognize him by lunch, even if he isn't particularly charismatic (a check every hour, with no other attunements), but a hero with lots of equipment has to really work at it. If you don't like this particular feature, include a modifier by level (down the chart, so that a 10th level character attunes far more easily).
A high charisma doesn't give you more items. It does let you get to your natural maximum with less hassle.