Personally i am using a widget when dialogue is initiated. That will have a drawn picture of the character you are talking with and a textfield where the dialogue is. Kinda like many Japanese RPGs do. Create a dialogue widget, you can add text fields to it. And make it function like the way you a re describing.
There are many good tutorials you can find on youtube that show you how to do almost everything you need in UE.
There question is very broad. But start by learning about widgets.