I downloaded both sources (1.12.8 and 1.12.9) and used SVN diff to check what changed.
With that I managed to fix it by copying over the content of the functions below from the 1.12.8 version:
OgreD3D9Mappings.cpp:
DWORD D3D9Mappings::get(HardwareBuffer::Usage usage)
DWORD D3D9Mappings::get(HardwareBuffer::LockOptions options, HardwareBuffer::Usage usage)
OgreD3D9HardwareBufferManager.cpp:
D3D9HardwareBufferManager::createVertexBuffer(size_t vertexSize, size_t numVerts, HardwareBuffer::Usage usage, bool useShadowBuffer)
OgreD3D9HardwareBuffer.cpp:
D3D9HardwareBuffer::D3D9HardwareBuffer(D3DFORMAT type, size_t sizeInBytes, Usage usage, bool useShadowBuffer)
I did not alter the constructor of the files, only the content of those 4 functions above.
I did however add "#define OGRE_D3D_MANAGE_BUFFERS 1" at the top of all those files I changed.
Now, I don't know exactly what the bug is, as soon as I change one of those functions back to the new version of it, the application crashes.
So in short, this is a fix for the issue, but I have no idea how to actually fix the issue with the newer changes of the 1.12.9+ versions.
But my game has now the exact same FPS in the stress test scene AND a in a normal game scene compared to the 1.11.2 version, so it works for sure.
If you manage to fix it for the latest version (13.3.4+) with this information I have supplied, let me know how you fixed it correctly instead! 