The only way you could get users to download the video first (without streaming) is to instruct them to do so. There's no magic way to instruct their computers to download it first. And even if you did instruct them to do this, you would still experience lag in your connection. There is no difference between "streaming" (playing while downloading) and downloading (playing the file after downloading) They're still downloading it from you and using bandwidth. (Read @ScottChamberlain's comment)
You said you do not want to move the files off of your computer or move them to a cloud service, so you've essentially locked yourself out of all viable solutions.
However, an alternative solution to fix your slow network speed problem would be to put your computer behind a router and use QoS to limit file sharing services outbound. This would be taking place on TCP port 445. Their computers would simply take longer to buffer (while streaming) or download. The downside to doing this is all outbound file sharing traffic from your computer on this port would become throttled.