Yes, I made my own level editor. It's not something you need to learn JavaScript to do at all, my level editor is all in C2 via events. I can press a button while playing the game, edit the level, press the button again and I'm back to playing the edited level.
I really don't recommend editing the tile map plugin for a couple reasons - first, it would be far more complex and Ashley has talked about why that's not a good idea because achitectural changes might be made to C2 which could invalidate the plugin you made.
Second, while I'm almost entirely sure the tile map plugin is more efficient, that I'm also almost entirely sure that that efficiency depends on it being snapped to a grid. To get the effect you want would undo those optimizations.
A level editor isn't the easiest thing in the world to make, but it's far fom the hardest. Basically you need to recreate the ui needed for placing, moving and deleting objects as well as selecting them and editing their parameters and variables that C2's editor gives you. You also need to come up with a system for saving and loading data when editing, and a way for your game to delete a level when you leave it, and to know what data to load and create at the start of a new area.
I decided to have my editor in game, but you might consider making an external level editor, which might be easier to reuse and make work for multiple game types.
It does take some work, but man is it smooth when you've got it working.