There isn't a way for you to achieve what you want without some permissions manipulation. The best practice is to give people the minimum rights necessary to do their work at the highest level so that cascades down to all the lists and libraries. Then in cases where user groups need more or less restriction, you break permission inheritance on the list or library and change permissions as necessary.
The point here is that if you have a good group setup in your site, then it is really just a matter of adding users to the appropriate group and by doing so, they get all the rights and privileges afforded to them where the group is used.
Adding users individually is a bad practice and makes management more tedious and time consuming than it needs to be.