Shields was never going to go for the length of time or amount of money Hamels is going for, plus no prospects, and an excellent track record in the AL. Even though he's older, Shields was more of a known quantity than Hamels. However, the FO disagreed with my assesment and let him sign elsewhere. Maybe age is a bigger concern for them on that specific deal, whereas prospects is the issue with Hamels. Contrary to your theory, all signs indicate towards money not being the issue with signing a pitcher, but rather age/length of contract.
In any case, it seems to me that Lee would be the perfect fit for the Sox. It's a calculated risk on a one-year deal that wouldn't cost them top prospects. Even better, they can keep him for an extra year if he's healthy and performs well.