I've never used Data::FormValidator, but looking at your code and the error message leads me to think that your second constraint should be more like:
name => 'card_expired'
I came to that conclusion because after_today('%m%y') by itself isn't a code reference, but a function call. (Of course if after_today returned a code reference, then my suggestion is worth a bucket of mud.)
Also for block quotes, I tend to use <blockquote><i> ... </i></blockquote>.
When your only tool is a hammer, all problems look like your thumb.