I am working on a project which will need an as small as possible DC motor which will spin up to 2500 RPM with a little bit of weight on it, maybe a pound. I don't know a ton about how to pick out the right motor and will need a speed controller too so that I can control this setup with my Arduino. Thanks.

Motor load is a torque, not a weight - you'll have to explain more about the mechanics of the situation or work out the torque yourself. If none of this means anything then just providemore information about the setup please?!