So to start, here's a quick little demo of the current state of the software I described in the last log.
A main concern when I first started this project was that there would be too much light bleed between nearby letters, thus making the display difficult to read for lack of contrast. To help on the pcb side, I opted for black soldermask, and additionally used the copper layer to try and block as much light as possible, but none of these would help with light scattered internally in the pcb's FR4 material which is a yellowish semi-opaque hue that works pretty well as a diffuser. I've gotten tons of suggestions involving using vias around each letter to try and contain as much light as possible within each letter, but I really liked how clean the top surface looked without having to riddle it with vias.
So the main method I could fall back on was the age old method of using a physical separator between each LED to try and contain as much of the light as possible. Luckily I have a 3D printer and was able to very quickly print out a few test prints to iterate a light box design which also doubles as a stand for the clock, holding it up at a slight angle.
In the end this is how this iteration of the design looks:
Definitely not perfect, but at least for me it is good enough considering the trade-off between inter-LED contrast and cost/simplicity of design (I intend to sell a kit of this project so the less complex the design the better).