Not sure where you problem is, however low level signals are inherently noisy.
For example: the first half is what one might like, however the 2nd half is what you can get.
-
I couldn't make your link work.
-
You mentioned the pot measurement was stable. Are the leads to the pot similar in length as the photo diode?
-
I would put an 0.1µF capacitor at the analog input of the Arduino. However I wouldn't add this capacitor now as there seems to be some basic issue and a capacitor would likely mask such an issue.
-
for testing I would put a delay before reading the analog inputs. 100 ms would be large enough to discount any timing issues.