Couple things
The controls are really...not great. Up to jump would be much better, coupled with, say, holding down a button to lock yourself in place so you could adjust the cursor as you wish.
You mentioned the level codes having to be ~25k characters long. You could easily write a compression algorithm to make it much smaller. For example, if there were 5 blocks of color X in a row, it could simply read X*5 instead of XXXXX. Additionally, chances are most blocks are going to be clear. Don't need those in your code. Try it out.
It has real potential. Maybe adding something like a tetris-esque physics system you can enable/disable would make a fun little "destroy the castle" kind of thing possible, or pre-made levels you have to edit to make look like something in X moves.