As perks are expensive, you're unlikely to get the whole lot anyway. Unless you're really high level, you'll need to choose which perks you want for yourself and which you're willing to delegate to officers. There is no need to artificially restrict a player's perks.
Or, for that matter, an officer's perks. As you have found, if you want to give an officer a decent range, you now need to assign him a post, give him the perks that are allowed for that post, re-assign him to a different post, give him the perks that are allowed for that post, etc.
I agree with @Pieter Boelen - a ship's captain, whether yourself or an officer you placed in command of another ship, should have the whole lot available. If anything, rather than restricting your perks, allow enemy captains to have the whole lot as well. Especially since an enemy ship won't have additional officers.
Or, for that matter, an officer's perks. As you have found, if you want to give an officer a decent range, you now need to assign him a post, give him the perks that are allowed for that post, re-assign him to a different post, give him the perks that are allowed for that post, etc.
I agree with @Pieter Boelen - a ship's captain, whether yourself or an officer you placed in command of another ship, should have the whole lot available. If anything, rather than restricting your perks, allow enemy captains to have the whole lot as well. Especially since an enemy ship won't have additional officers.