Transactional replication failure handling
Yes, your understanding is correct. Usually, the Publisher and Distributor are the same servers.
Yes, there are jobs that are automatically created that notify you when the replication is down. After creating the replication, check your SQL Server Agent and see the new jobs. You can alter the schedule and the notification properties. But you can create your own job that checks some latest record in two instances if they have linked server to one another.
That one I think you will have to set it up by the application.
Subscribers can get queries and read operations, that will let you the publisher with less I/O and tend to be faster. Updates will work though, so you will have to treat it so that the user knows that it may not persist.