The mobo in your laptop may not support more than 2GB of RAM. An external hard drive or flash drive would only add storage, not RAM - RAM stands for Random Access Memory, and it's what the computer uses in tandem with the processor to run programs that are stored on your drives. RAM doesn't really "fill up"... but if your computer is running many programs at one time, it will up the usage to 100% and slow your computer down substantially, as well as causing it to throw up "not enough memory" errors.
RAM is only expandable by opening up the computer and adding sticks of memory, which if you don't know what type you have (DDR, DDR2, DDR3) or how much your motherboard will support, is kind of useless.
My suggestion would be to first check what you have running by doing a ctrl-alt-del and checking task manager - it may be that you have many background programs running that you don't really need. You should also run a virus scan - viruses can cause your computer's CPU and RAM usage to skyrocket.
If you have a friend who knows about hardware, you can get him/her to check your RAM type and whether or not it's expandable. However, if you get rid of some startup and background programs and don't have any viruses, you should be better off in the physical memory department. You did the right thing, if you're running Vista, by upgrading to 2GB of RAM - 1GB is the ABSOLUTE minimum to run Vista and believe me, it doesn't run well that way.