What do you think of simply coupling a node’s storage requirement to a function of its age? This would cause the max capacity within a single section to grow in a natural way. It would allow archive nodes to naturally emerge, while also making it easy to determine storage capacity of a section by tallying node ages.
For example, consider a simple power law:
RequiredNodeSizeInGB = A * (NodalAge ^ B) + C