125 Kilo Hertz - Close Proximity
This is a really great way but these only work up to 15 centimetres. That is only 1/4 of what you need.
This Olimex, produced in Europe emulates a keyboard input, which the Pi can do over USB. Its cheap at 5 GBP and works with tags on 125Khz
This site is another hackerspace shop that has some interesting custom solutions and tags that also work on the 125Khz spectrum, but still up to 15cm maximum range.
UHF ~900 Mega Hertz - Long Range
These are more pricey and need dedicated hardware and use various kinds of antennas. Short range ones for about 8USD for up to 50 centimetres (this is what you want) and long range ones up to 6 metres that costs up to 250USD. The tags them selves are very cheap in bulk about 0.10USD at 1000 units.
Here is a system that can read certain RFID UHF (~900Mhz) tags up to 4 metres. There is no price so I assume its darn expensive and it doesnt support all tags and uses some kind of proprietary SDK, over USB and is supported on Linux. These are typically used in Toll Gate systems where cars have E-Tags
This is a USB receiver for 177 USD but still needs an antenna. The initial investment might be expensive but from there on after the tags are cheap.