A bug inherited from CraftBukkit.
Currently NMS furnaces check if block is lit by checking burnTime in the tick method, before and after running all the checks. This however prevents CraftFurnace setBurnTime method to light an existing furnace, or to power it off.
Attached patch fixed this by accessing directly the block, which has a really low overhead as it's only done when the visual block is updated.
Note this is a visual effect bug and the burning of items using setBurnTime works fine.