It definitely would benefit from that, people like to have success. (And know who they can blame in case of failure)
The easiest solution is probably brute force, have it try all the potential moves and see if it solves the game and if it does, make it a valid seed. Can be pregenerated, but should be doable in real time, also from a smartphone.
Also, I think I was just blocked from my first clearing, because I could not access all blocks.
Rotating the view and angle would be quite nice, but depending on your implementation, not trivial.
Maybe I implement it with babylonjs or threejs these days, it is a fun game.