Sharp PC817X datasheetYou are running the opto in your circuit well below the recommended minimum current for If of 1mA. You are on the dotted portion of the transfer characteristic curve (datasheet fig.6), below 0.5mA, which I would read as probably being extrapolated data, not to be relied on.
If you decrease the pull-down in an attempt to improve reliability, device to device variation of the opto's CTRR between batches and even on the same reel is probably going to bite you in the ass, and result in a significant number of failures. CTRR also declines with age as the LED output decreases and declines with increasing ambient temperature, so if your design doesn't have enough excess If margin, a specific individual opto that works on the bench today, in the field may not pull the output high reliably on a hot day a few years later.
A major design difference is whether the input channels need to be individually isolated, or whether they can share a common ground (with each other, not the MCU side).
If the latter, it would be economic use comparator ICs to provide input buffering to allow you to use much higher divider resistances and thus reduce the loading on the voltage sources you are sensing. It should be possible to go as low as 50 to 100 uA divider current without issues, if you are careful about layout, put slots under the upper divider resistors to increase creepage distance and clean the board thoroughly after assembly. Use an isolated DC-DC converter to power the comparators (and the opto-LEDs) from the Arduino side (but beware of the Arduino regulator's limited 5V output current). Add a voltage reference IC to provide a stable and well defined threshold voltage for all the comparators to switch at.
If you need more than about four input channels, and you don't need a vary fast response, consider using a SPI I/O expander on the HV side of the isolation barrier and optoisolate the SPI bus. There's three lines going MCU => SPI device, and one the other way, so that only needs one quad and one single optocoupler. If your chosen I/O expander has a reset pin its probably worth hooking it up to the spare channel of the quad opto, or you could use that for a second /SS signal to access an extra I/O expander for more channels. It may be worth swapping the single opto for a double to bring the expander's IOC interrupt output (if it has one) to the MCU side so you can hook it up to an interrupt input so your code doesn't have to poll the expander continuously.