I read you sample code, you create every map when refresh, base on your scenario, I think you except the new maps that in new pages/dialogs when user clicking some columns. So you create many map with many InMemoryFeatureLayer. But I need to tell you that it is not one good design with MapSuite.
The best practice is:
1. Only has one Map Control instance in you application/website;
2. If you cannot avoid create many map control, you must avoid use InMemoryFeatureLayer. from the name, you might know that InMemoryFeatureLayeralways keep in memory. That's why you meet this issue.
So here is your solution:
1. Create one map, this map is hided by default;
2. The map shows up by updated value in InMemoryFeatureLayer when user clicking some columns, and redraw the InMemoryFeatuerLayer;
3. When closed the dialog/page, you can hide the map again.
We have created one sample with layer redraw and attached on latest reply. I think you can easy to hide map and show map in your dialog/pages.
Hoe this is helpful to you, if there is any issue, please feel free to let us know that.