Using 301 redirects is the correct way to do this, so it is not a problem at all. This will not hurt you if it is done correctly. I have not found any issues with doing massive amounts of redirects on large sites (1+ million pages). Definitely leave the redirects up for as long as you have the site.
You will want to make sure that you create a 301 Redirect Map (excel or something), so if it is is ever necessary to move pages again you can update the previous 301 redirects as well. You basically so not want to daisy chain your redirects – update them so there is always only a single hop.