I've been looking all over the internet about how to fix this but no luck. Everything I've tried just ends up creating another legend.
How do I get it so that my legend is either inside or outside of the graph (not half in and half out)?
Also, how do I change the font size just for the legend?
Have you tried simply expanding the plot to be wider, by giving the plot window more space ? you might find that the legend goes to its natural position when there is sufficient room.
If this doesn't work or is unsatisfactory, I would be willing to try to come up with some code for you to control it more explicitly but I would ask that you make a reprex first.