Please do tell me if there are any additional components I need to add to the circuit to ensure the safety of the digit display
I notice in the circuit that you do not have any resistors in series with the LED. You will end up damaging the LED or the Arduino output as the current drawn will be too high. You need to put a series R with the LED. I would suggest something like 470 Ohm to start with as a safe value. There are lots of resources to tell you how to calculated the R for your LED, it comes up often in these forums.
Also, rereading
off(0);off(1);off(2);off(3);off(4);off(5);off(6);off(7);off(8);off(9);
your outputs are pins 0..7 and do not include 8 and 9.
Maybe your LEDs or the Arduino ports are shutting down. with a delay you would notice the 'flash'. Without the delay you are continuously turning them on again and again. If the delay is much shorter (say 20 ms) do they appear dim?