1. your CPU is fine for BF3, it is not a CPU demanding game (see the chart) any decent CPU will run it with ease. OC your CPU can help out in other games.
2. 4GB of RAM is plkenty for gaming , adding more RAM won't increase gaming performance but DDR3 RAM is cheap so its your financial call.
3. BF3 is graphically demanding so upgrading would give you the best increase in game performance.