What is the reason that once a student has passed a university course, the student cannot take the course again?
In the United States, institutions that have such a rule do so primarily because of the requirement of satisfactory academic progress, or SAP, that is imposed by some, perhaps many, forms of financial aid.  "Progress" means accruing the credit hours necessary to earn one's degree, and students who repeat courses for which they've already earned a satisfactory grade are not progressing (as fast) toward graduation.  Students who do that more than a couple of times may have a high GPA, but unsatisfactory academic progress, and may lose their financial aid.  

Edited to add: Sadly, and to me astonishingly and dismayingly, the subtleties of how financial aid works seem to escape many students.  They overlook the SAP requirement entirely or decide they will somehow "catch up later."  In the United States, it is difficult or impossible to have different rules for similar groups of people, so we generally can't have one rule for students with financial aid and another for those without.  The result is that, even if it makes no difference to your financial situation, in many institutions you can't repeat a class in which you've earned a satisfactory grade.