Meet in person, get to know the person in real life and pop the question.
Why would you propose to somebody without seeing them? And also, wouldn't your future fiance appreciate the face to face proposal?
I'm not aware of any restrictions on USCIS side, you can certainly propose before meeting. You just have to meet before you sponsor fiancé for I-129F.
But for your own sake, I'd meet a person few times on different trips before making a proposal. Majority of virtual relationships do not withstand reality... Meeting before proposing will also reduce any suspicion from USCIS that this case is fradulent. Your future fiance may be asked about timeline of events, and proposal before ever meeting is not going to make case stronger.