Hey, I've been thinking about this too and I have a different approach to it, but I still haven't made it so I'm not even sure it's doable.
What I'm thinking about is having a "special" kind of tile in the tilemap, for instance, a "special wall" tile.
When I load my tilemap, I was thinking of checking for said tile, erasing it, and creating an "special wall" object where it was. The same could be done for enemies, or anything else really.
As I said, it's only an idea and I haven't gotten to the point to implement it yet, but since tiles are basically an array of tiles, I think it's doable. Also I wouldn't advise messing with tiles directly unless you're drawing on them or something, you wouldn't even be able to animate a tile if you wanted to destroy it or something, just erase.