A couple of things to keep in mind before I start here. First, Roy has one of the best airspeeds in the game. He is exceptionally fast in the air. Second, he also has a decently fast ground speed too.
Your 3 best moves in the neutral aside from grabs are your nair, your dtilt, and your jab. These aren't safe without rules though. You have to space them out right, you can't just do them right in the opponents face. As I mentioned before, Roy has a very fast airspeed. This makes minute spacing your nair on mobile opponents very difficult. If you're just dashing all the time, all of your approaches are going to put you too close to your opponent after the nair and you will get grabbed. Master walking. Get good at simply being able to walk in high pressure situations and your neutral with Roy will improve by an order or magnitude. If you are spaced out, it is very difficult to get in vs Roy, because nair jab and dtilt are all way too fast for your opponent to deal with and can cover pretty much any option they choose as long as you choose correctly how to respond. This strategy falls apart vs characters with better disjoints than Roy though, as you won't be able to throw out your normally safe moves as often. This is honestly the main reason that Roy loses weird matchups that he really shouldn't, like Marth.
Roy's airspeed combined with his fast fall status and ground speed also makes his tomahawks very deadly. Consider the situation where you are trying to jump in vs your opponent. From your opponents perspective, Roy is likely to do a couple of different things: the most likely in their mind is going to be a nair, since this is Roy's safest on shield aerial and allows him to continue pressure after landing. Roy may also try to do a fair and retreat with double jump during the IASA frames. Lastly, Roy could try to empty land and go for a grab, or even a grounded Up B, which has super armor. Those last two options are especially potent. It basically creates a mindgaming situation where your opponent has to shield(to block an aerial approach or a empty landing into blazer), or they have to throw out some move to beat an empty landing grab. If they choose one and you do the other, you WILL hit them. The same thing goes for you, though if they shield your nair then you still have the advantage and can try to dtilt them or grab them or whatever. Obviously going for a blazer is a really hard read, but if you program your opponent to respond to your empty landing grabs throughout the game, you can land it to close out a stock.
TLDR In short, your neutral game is going to consist of the standard bait and punish stuff that everyone does, and then nair, jab, dtilt and empty landing into other moves. Practice hard on spacing nair, and controlling your airspeed so you aren't going full blast all the time(the biggest common Roy mistake imo).