Please see the answer for your queries below.
1. Is the constraint of only programming 1 to 0 a technology specific or is it common among all SPI NOR or Serial Flash devices in general?
Answer) It is applicable for all flash devices, both serial and parallel. You need to perform an erase operation to change a bit from 0 to 1.
2. Can two successive program operations to same page be issued without an in between erase operation?
Answer) Yes, you have to perform an erase operation before programming new data to flash memory.
Thanks and Regards,