In mail.app can one set the default account that is used to send mails to a specific person
You actually can set a rule to move the received message to different folders according to the sender, either your friends or your university's teach.

In terms of the automatically sending message to different receipt with different account, I can't figure it out, but there is a manual way. In the mail.app Accounts setting, leave the "User only this server" un-selected.  So that, when you compose a message, there will be a SMTP server selection drop down list allow you to manually select which SMTP server you are going to use.