если sys.getsizeof и метод __sizeof__() для обоих списков показывают одинаковое значение
Читай документацию!
Only the memory consumption directly attributed to the object is accounted for, not the memory consumption of objects it refers to.
Два списка одного размера занимают одинаковый объём памяти, а вот их элементы в этот объём не входят, их надо считать отдельно. Там-то и будет засада.
Интернированные объекты - это своего рода синглтоны, они существуют в единственном экземпляре, и при создании через литерал вместо создания нового объекта переиспользуется старый. Разумеется, это подразумевает, что объект неизменяемый.