XBMC does everything on the list, out of the box.
Portable (being able to keep it on a flash / external drive with all my movies)
-Just set it up in portable mode during installation, point the install folder to your portable hdd and away you go.
Pulls up IMDB information (including art, actors, genre, etc. Would be nice to have it cached so I don't need internet everywhere I go to get it)
-XMBC scans all source folders, scrapes info from your chosen scraper (including IMDB) and sets up a movie/tv library, saving the info locally.
The ability to search / navigate by actors, genre as well as title)
- You can navigate the library by the above, plus you can set up smart playlists that filter by age rating, resolution, all sorts.
Multiple formats (xvid/avi, mkv, mp4, wmv)
-I've never found a file (that wasn't corrupt/broken) that it didn't play.
Multiple folders (for both movies and TV shows)
- You can add as many source folders as you want. these can be set as movie or tv episodes. The files need to be named in a way that the scraper can recognise but most library based systems will need this anyway.
Low-ish resources (less memory, more video)
- They are getting there with gpu decoding. It depends on what you mean by low-ish resources. I run XBMC on a low power athlon 4450e and it's fine with 720p. GPU decoding is needed for 1080p. The user interface is fine either way.
hope that helps