This is a long text, but probably worthwile to read, because it contains workarounds to prevent the bug discussed in this thread. Once more I'd like to thank ssdany, whose work made it possible to understand the bug.
The last two evenings / nights, I did some additional tests.
Test 1
Use a reinforced runestones bomb to verify the effect with a savegame created and used exclusively with TW3 GOTY 1.31a and determine the number of already used item IDs
The savegame used for this test was the current state of my second playthrough, and there were 42 stacks with runestones and glyphs in the inventory. I opened the developer console and entered additem('Glyph aard lesser',20800) to increase the total number of such stacks to 250, and prepared to do 300 save/restore cycles in Wyzima. This way, the runestone bomb should consume 250 * 300 = 75,000 item IDs, which is above the maximum of 2**16 = 65,536, and corrupt the inventory once the maximum was reached - a brute force way to learn, how many items IDs were already used.
Normally, I turn off sound and screen, while the PC does tests with keyboard macros, but this test was different:
Tension was in the air, while the five-fold reinforced runestones bomb burned item IDs in large chunks of 250 per iteration. I stared at the screen, and it was like standing before a court and waiting for the judgement - the savegame used had 27 reloads and 195 hours ingame time and once again a Geralt was ready to go to the Isle of Mists. It was the best, I could have done with my limited knowledge about the bug - but was it good enough to continue?
Some minutes later 25,000 item IDs were used and the inventory still looked fine, and then the test passed 50,000 item IDs and the relation between initially available and used item IDs improved rapidly, and finally the bug corrupted the inventory after 57,500 item IDs. Enough for the basic game, all extensions and even NG+.
Test 2
Workaround: Stash runestones and glyphs in the storage box
The next test was an attempt, to partially work around the runestones bomb by proper ingame action: I stashed all 250 stacks of runestones and glyphs manually into Geralts storage box, travelled to Wyzima as usual and did 300 save/reload operations, went back to the storage box and took all 250 stacks one by one to be sure, to really get what was displayed.
Result: The runestones bomb is not active, if this stuff is moved from the players inventory into the storage box, because even if the storage box would use a separate space of item IDs of type Uint16, an active runestones bomb would have burned 75,000 such item IDs and therefore destroyed the inventory of the storage box.
This is an important result, because it allows to work around the runestones bomb: Let's assume there are 1000 runestones of all 45 types to be found in the basic game (I doubt there are so many). If each is picked up and put into the storage box one by one, this will use a total of 1000 (inventory) + 45 (stacks in the box) item IDs. Probably significantly less, because in the game world, several runestones of the same type can be collected, stacked, and stashed into the storage box before the next reload using only one item ID per collected stack.
On the other side, if 45 stacks of runestones are carried in the players inventory during 1000 reloads, this will burn the dangerous amount of 45,000 item IDs. Quite a difference, isn't it?
Test 3
Add and remove a randomly generated non-stackable item many times
This test was lengthy: I added and removed a non-stackable item, the sword Moonblade, to the inventory 75,000 times - with a save/reload operation after 500 operations / 250 swords - with a new keyboard macro using the game developers console. I wanted to know, whether each such operation really consumes an item ID, and verify the results of Test 1 without involving the runestones bomb. I choose this famous sword not only for role-playing reasons, but because I assumed, each weapon, even this one, is generated with randomly choosen properties and therefore a different, unique item.
While it was possible, to add 250 swords with one additem() command, it was not possible, to remove these 250 swords at once - therefore I used additem() and removeitem() for each sword and optimized speed by recalling the console commands.
Result: After six hours and a number of operations consistent with the results of Test 1, the inventory was corrupted.
The consequences are striking: Each time, when you kill a bandit and pick up his junk weapon, just to sell it, an item ID is consumed. Each time, when you pick up some junk item, like a broken pitchfork the people in Velen often hoard in their chests, an item ID is consumed.
Especially, if you are a victim of the runestones bomb and/or the item ID game engine limitation and restart from an earlier savegame with many item IDs already consumed, you should think twice before doing that.
It is probably possible, to save and reload a game in "The Witcher 3" as often as you want, if you stash away or sell your runestones and glyphs, and it is probably possible to grind and loot at your hearts desire without dire consequences, if you keep this item ID problem in mind.
DrDeathhand played for 1883 hours, until he had used all possible item IDs. Salvatore80 reloaded 2106 times, until he hit the same wall. I could reload a small savegame with only 3 runestones in inventory 8600 times without problems. And during my second playthrough, I did some sessions of indecent length, but the game was able to sustain this in full stability. These foolish Uint16 item IDs used only in compressed or saved state, but not while running the game engine, are the equivalent to the limited speed of light in physics - this may be the final frontier here.
I would recommend, to keep always one piece of stackable items like hides / pelts / skins, plants, moster parts or common books in the inventory, even if there is some additional weight. So, if you hunted white wolfs and have 50 livers or pelts, sell only 49 and keep 1, this way you can always use the same item ID and kill thousands over thousands of wolfs. And when doing alchemy or crafting, do not use all ingredients and materials - make sure to have always one piece left.
Of course, I don't know what that taxman added in the Hearts of Stone extension will do, if he meets you with one piece of all types of hides in possession, but I'm sure, money is a minor problem, if you killed thousands of beasts (not the cows in White Orchid of course) and sold the loot ;-)
Live long and prosper.