It might be the enhancements Adobe added to InDesign's GREP, and now the $ character gets a bit over-used. It did the same for me (only finding the 1st occurrence), but I got it to work using
(where "\x24" is the hexadecimal representation of "$").
It works — I just used the non-greedy match: \x24\s.+?\s\x24
It's a confirmed bug (has been since CS3!).
In case your interested (probably not, but Jongware has a nice picture that's (maybe) worth seeing) here's a thread were Marc and I discussed how to find the first and last GREP occurrence in a paragraph / story and the use of the $ and ^ symbols.
Yes, I am interested. Thank you, Trevor.