if your only mod, that's adding surfaces, is factorissimo 2 you could edit the control.lua of the mod: change line 12
if ( (p.surface == game.surfaces[1] or not game.active_mods["factorrisimo"]) and (p.walking_state.walking or (p.vehicle and p.vehicle.type == "car" and p.vehicle.speed ~= 0)) ) then
to
if ( p.surface == game.surfaces[1] and (p.walking_state.walking or (p.vehicle and p.vehicle.type == "car" and p.vehicle.speed ~= 0)) ) then
after this change the mod should work like version 0.8.4 (floor tiles in factories don't get destroyed)