Would that work? Is it as simple as that?
But why on earth does this matter what level turns it on? You control it with software so it makes no odds at all.
But then, when I power the board while the Arduino ISN'T powered,
Is there a similar device (same pins and size) that do what the ULN2803 do except inverting? (So I could replace the chips easily)
I want the other way and don't want to change the code because I have something else (LEDs) connected to the shift register's outputs as well, so I want LED ON when relay is ON too
Never ever do that. Is is very bad to have anything on the inputs of an unpowered chip.
If you connect the LEDs and resistors across the relay coil they will come on with the relay.
Seems like Rube Goldberg electronics
Do I need to add diodes to block current flowing from the relay board inputs to the shift registers outputs
But if the Arduino resets or is interrupted in some way, you may get to a state where you will have the Arduino on and DP2 LOW