Agreed, sounds like the customer table needs some normalisation. Though I don't see how 3000 attributes = 3000 rows, an attribute is a column, so 3000 columns. But yeah, you probably need to break that table down.
If you want to store stuff in JSON documents, go use something like DocumentDB (Microsoft), MongoDB or one of the other document databases. SQL is a relational DB, should have normalised table designs if you want it to work well.
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability