I had come across one some years back from one of the big Ivy League schools that aimed to minimize the impact of the chosen basket of goods that's used to calculate CPI by basically tracking every good that they could using huge datasets. I don't remember exactly how the weighting was structured. What they ended up with, through all their effort, is an index that almost exactly tracked the CPI to withing 0.2 almost all of the time, with small deviations that averaged out to almost nothing. What I took away from that is that the CPI is actually pretty good for what it's designed to measure.
One problem is that many people look at the CPI and say "well, that doesn't represent ME and my changes in cost of living." And of course it won't. It's based on an average basket of goods that is weighted to what society at large spends on those goods. That means part of the CPI is based on things like mortgage/home purchase costs, some is based on rent, etc. in proportion to what people spend on those things, but no individual actually spends both on mortgage and on rent. Just like nobody is actually an average human being with 1.9 arms, 1.9 legs, and 2.3 children (or whatever the current figures are).