Okay, as mentioned before, memory leak is a possible conclusion to take from this. So, check:
- particle systems
- surfaces
- data structures
- vertex buffers
- vertex formats
- buffers
- audio streams
- cameras
- sprite fonts
- sprites from surfaces
- physics fixtures
Those are pretty much all the different dynamic resources that you can create, so if you are using ANY of these, recheck all your code related to them. Also note, if you have code in a DESTROY event to clean up any of these types of resources and the room ends, the destroy event is NOT called, and I recommend using the Clean Up event instead. This is a common misconception and I've seen quite a few memory leaks caused by people thinking that destroy is called on room end...
Also note that a small increase in memory over a long time is pretty much to be expected especially on Windows, as - even though you clear up data structures, particles, etc... - Windows will not de-allocate the memory they used immediately and will instead just re-use it, although the drop of 800fps is indeed suspicious.