Should I construct balanced data with only necessary variables or unbalanced data with many potentially usable variables?
I would construct and maintain only the full (unbalanced) data set with many variables with many missing values. Why? We can always extract balanced panel data sets from the full one; we can't go the other way around. When a balanced set is needed (in order to reduce the file size or send it to others), I would use Stata or R and never do it manually. To err is human.