Currently you can buy a GPU and be "quite" sure that it'll pay off in a not too distant future (at least sooner than it's expected lifetime), as there is a real run for buying BTC, which keeps the BTC<-->USD price high.
This will change over time, as the profit margin from mining will become smaller and smaller.
If you can only earn less than 1 BTC per block in the future, Bitcoin would either rather have prices comparable to gold/diamonds than to USD or hashing power/difficulty will be much lower (in proportion to future computing devices that is of course).
It's nice to hear though, that difficulty can only increase 4-fold, not skyrocket endlessly after just 2016 blocks!