dllcache is designed to prevent you from changing any core components, by automatically fixing anything you changed with the copy out of dllcache.
The i386 directory is essentially a copy of the installation files and such. It's useful simply because if you install new hardware, XP can just look in that folder for drivers rather than having you insert the installation disc again so it can find them.
System Restore is something you don't want to get rid of, because it can be so useful to fix your computer. I don't know why you'd want to remove that bit (even though I don't have System Restore on), but it saves all sorts of things and then protects itself from viruses.
And yes, Microsoft is trying to make it difficult to modify any part of Windows. That's why it's proprietary software.