I'm speculating here, but I think that the broad 'reason' is that that's how they've designed the station. Let me expand on that: the first stations (early Salyut, Skylab), were launched all as one piece. All their maneuvering fuel, consumables, any spare parts, were launched in one go, and that was all you had.
These were the so-called "first generation" space stations.
The second generation begins with Salyut 6, which was the first station to have two docking ports. Now the station could be resupplied with fuel, consumables, and replacements for broken parts. This drastically increased the lifespan of the station.
The third generation begins with Mir, and in this generation you have a main 'base block' of your station and then attach modules to it. The base block itself is one of the modules, however, and this will limit the lifespan of the station.
Now comes the real speculation: I think that what Russia is doing with their 'node module' will be the fourth generation of space stationstations. As far as I can tell, the node module will be relatively simple, and so can be designed to have a very long lifespan. Modules would be able to dock to the node module, and undock when their lifespan or technology has run its course. The longer-living node module would remain in space and see many modules dock and undock. But I'm just speculating here, I have no idea if this is Russia's intent or if its how they plan to use the node module.
To answer your question in this context, I see the ISS as a third generation space station. So it is modular, but a lot of the components are still interconnected, and as such the station itself had a very finite lifespan by design. Modules could still be disconnected (I think they've run a lot of cables between the modules, so they would have to disconnect all those first. Not impossible, but a lot of work I'd imagine), but with no 'core' or 'node' to reattach them to, the question then becomes what to do with them, and that's where geoffc's answer goes into more detail than mine does.
Ultimately I think the 'real' answer to your question is a combination of my answer and geoffc's answer