Looks like a small system you are building. Most people here will insist that you use ECC RAM. You didn't say what model of Gigabyte motherboard you are using but I'm guessing it does not support ECC. If you can't replace your data and can afford to buy a new motherboard and RAM (and possibly a new CPU because you didn't tell me what model i3 you are using), use ECC. Otherwise ZFS with bad memory is still safer than a crappy backup drive.
Before you start using the new drive look into burn in testing. This is EXTREMELY IMPORTANT! Do some searching on the forum, lots of good information. I would hate to see you move all of you data to the new drive and reformat the old ones just to find out the new drive died before you move everything back over.
Another note, ZFS is flexible but you cannot add one drive at a time. The minimum is the number of drives per vdev and that's a minimum of 2 if you want any kind of redundancy/parity (yes you want this). With a two drive vdev you lose half of your space, with three drives per vdev its number of drives - 1 (assuming RAIDz1). while you can add vdevs to grow your pool, it is far from ideal as the drives will not be balanced and performance may suffer.
- Set up FreeNAS and install new drive.
- Perform burn in testing for at least 24hr
- Shut down the system for a few hours to let everything cool down to room temp.
- Run another stress test for a few more hours.
- If the drive shows ANY odd behavior sounds or errors, return it and get a new one. No errors are acceptable.
- Copy old data to new drive while in FreeNAS, use your method of choice.
- Shut down and connect your old drives to the FreeNAS server and configure your new pool, do not extend the one on the new drive.
- Copy data back to the old drives again using you choice method (If it's just files I would use the console and just use the cp command)
This is admittedly a bit clumsy and depending on the amount of data may not work. (it all needs to fit on the new drive). But unless you plan to buy all new drives for the server its the way I would end up using.
Other may have other opinions or methods, I am not an expert in juggling data.