Essentially, you are going to create your resource pool from the resources in existing projects, and then switch each project to use the common resource pool. All of the resources will retain their properties and history.
I tried this with a small project and a new, blank resource pool and it seemed to work just fine. I didn’t try resolving any conflicting resource names as described in the article, though. Perhaps you could try all of this with some test files first just to familiarize yourself with the process and to gain confidence that it will work. And, as always, make backups of your projects, just in case!