Ok, Wikipedia tells me that the Nexus One supports 3G on 1900 MHz, but not 1700 or 2100. It looks like T-Mobile had switched 1900 to be a 3G band in some but not all cities as of 2012[1]. So I'd guess that you were in one of those areas that hadn't switched over, and only had Edge available in the frequencies your phone supported.
[1]http://support.t-mobile.com/docs/DOC-4988