The 20D is as good as nearly any DSLR on the market at "macro" shots with the right lens. The 100 2.8 is the defacto macro lens for Canon gear but you can save a lot of money by getting the older, non-IS, version. It's roughly half the price of the IS version but might still be out of your range.
The Tamron 90mm and Sigma 105mm macros are also worth a look, and a little cheaper.