Interrupt INT0 is triggered multiple times on ATtiny10

Why do you want to put the device to sleep on the first button press ?
Why not simply record the time (millis()) when the button is pressed and, if there is no second press within 707ms the "ON" mode will be activated. If there is a second press, then the device goes into long sleep. Surely the first 707ms is not going to make a big difference to say current consumption

You may have another problem that edge triggered interrupts do not wake all AVR devices from sleep mode. It is then necessary to use pin change interrupts instead. The ATmega328P can be woken from sleep mode (power down) by an edge triggered interrupt. An ATTiny85 cannot. I don't know about the ATtiny10.

With complex sleep/wake behaviour, I've found it easier to use a state model. On waking it determines what the wake stimulus was and acts appropriately. An example is described in the documentation for this project: ATtiny1614 based Under Bed Light