Hi Cold Titanium,
I've given this some thought and there are several ways you can go about this. Whichever way is best really depends on what you like, so it's hard to make recommendations. It's one of those things that's easy to make a lot more complicated than it needs to be. Here are my recommendations.
Recommendation 1 1 HDD, 2 OS's... and 1 HDD All Data Storage. It would look like this...
Current HDD[------C(Vista)100gb-------] [-------D(7)100gb------] [------E Data Storage 440gb------]
Second New HDD [------------------------1TB Data Storage----------------------]
Recommendation 2 1 HDD, 1 OS... 1 HDD, 1 OS (Each have own storage)
Current HDD [--------C(Vista)640gb---------]
Second New HDD [-----------D(7)640gb-2TB----------]
Recommendation 1 is better because it will automatically let you dual boot and choose between each at startup. 7 will be the default OS. Then, you have the rest of the 640gb HDD for storage on a separate partions, and then another HDD your choice of size for all data storage. The downside to this is if HDD 1 dies on you, you lose both Vista and 7 and you won't have a bootable computer. However, the easy solution to that is to install a small Linux Partition on the large storage drive so if your old HDD dies, you can still boot your computer and access the internet, etc.
Recommendation 2 is only better because it separates the two OS's which I sort of covered int he above explanation of Rec. 1. However, this way you will not have an automatically set dual boot and you would have to boot to the BIOS to tell the computer which hard drive you want it to boot whenever switching OS's. As iammykyl suggested, a 3rd party boot manager can solve this, but I don't know anything about them personally.
Also, in Rec. 1 you will have to resize the Vista partition in which there is a slight chance the MBR can get corrupted where a startup repair would be needed. I know this because it happened to me in a similar situation. Startup Repair easily fixed it.
Should I purchase the exact same drive again?
No, I would purchase the largest drive you can afford. I think 1TB's are going for around $100 right now. Regardless of which option you choose, you can partition it however you want to keep all, half, or specific data on it. You filled up a 640gb drive with 1 OS, I would go bigger if I were you.
One other concern; Would installing a second HDD cause validation issues with Vista?
Add hardware should have no affect. Generally with OEM licenses it's more about replacing the motherboard causing the validation issues. Popping a second hard drive in for additional storage or for another OS won't affect validation at all.
OK, that's enough for now. Sorry for the long post. Let me know what you think or what ideas you have in mind. Just remember, partitioning is the key, and it can be done very easily. You can move all the DATA you have on Vista to the second hard drive if you wish, that's very easy. I don't use 7's default "My Pictures" folders, I make my own. See?
Let me know.