My son struggled with 2 hrs A time at 5 months (he always seems to be on the lower side of A times), but it didn't take him long to catch up. If yours is OT, which he may be if he is waking up crying, you might want to keep A time at 2 hrs or less, and work up from there. That's what I had to do anyway. I had one week where he actually did 1.5 hrs A time and had good naps, but once he was caught up on his sleep he was ready for more A time right away. He's almost 7 months now and we're still playing with it, but depending on his night he'll do anywhere between 2 or 3 hrs. It is frustrating sometimes trying to figure it all out!!
Yours sounds a lot like mine was, goes down easy but doesn't stay awake. PP is probably right, you probably should try and get his A time nailed down a bit before trying too much else. It's hard, but it takes a lot of observation and trial and error, and a lot of time! With my son, the first A time of the day is the shortest, and if we can nail that first nap then the rest of the day is easier. Start with the first A time. Give yourself a starting point, try 2 hrs. When it's almost been 2 hrs, watch his cues, see what he is like (yawning, rubbing eyes, bored, happy, etc). What I usually do around that time is change him and start winding him down. Then I can keep an eye on when he is ready for his nap.
After you put him down, the waiting begins. When he wakes, see how long he slept, what he is like when he woke up. See if he will resettle. If he woke OT, maybe he had too much A time or was OS. If he woke UT (which isn't likely since you say he's usually crying), he might be ready for more A time. I find that if the first A time & nap don't go well, then you'll have to try again the next day since the next A time for that day will have to be shorter due to the short nap and that throws the whole thing off. Does that make any sense at all?
Another thing that I find affects our naps is OS. I have to be very careful what sorts of activities and stimulation DS has before his nap. For example, I'm careful not to put him in his activity jumper before a nap because it gets him all excited and OT very fast. I try to keep a lot of activites low key before naptime.
Sorry if I'm confusing. Finding that perfect A time is really one big experiment, and then when you find it, they're ready for a change! Let me know how things go!