It appears that when a field-level validation formula references a field that is not on the page being saved (or is set to be Read Only on the page), the value of the field resolves to 0 or "".
For example (I created this in your test zone):
1) I set up a validation formula on the "Approved by" text field that displays a warning if the Amount Paid = 0. It shouldn't Approved until it's Paid.
2) On the record Edit page, when I have the Amount Paid field on the page and try to enter a value in Approved By, no warning is displayed since the Amount Paid is not 0. This is the correct behavior.