There isn't a technical reason for not using both notify and read. It's just that notify is usually used for push (from the peripheral) and read is used for pull (from the central) but you can do both.
There is no way to be notified on the peripheral when the central subscribes to a notify characteristic.
If you don't want to do read, best approximation would be to use an onConnect handler and then do a notify a little while after the central connects, allowing enough time for the central to subscribe to the characteristic.