I think a schedule would help his body get on a natural rhythm and would make things easier for him. When I wake up at varying times each day and go to bed at varying times, I feel a little out of sorts and have a lot more trouble getting up/falling asleep. I would set a schedule that you think matches what he needs and follow it strictly for a week and then evaluate how things are going. Some children thrive on a set schedule, my son would be a mess without it. Set a morning wakeup time, nap start and nap end and bedtime (try to match the nap length to sleep cycle lengths so if you have to wake him, you do it at the end of a cycle. They typically are 40 minutes and they'll often stir at the end of a cycle, sometimes getting up and sometimes going back to sleep. waking at 30 minutes or 50 minutes on the dot is a sign of overtiredness.)
Based on the average sleep needs for that age, I'd try for waking at 8am, nap at 1 pm for 1hr & 10 min and bedtime at 8pm. It won't go well for the first few days, until his body gets used to it. One easy way that I used to get my son used to a set nap time was to take him for a drive at that time every day. Then once their bodies adjust to the schedule, they will make a few tweaks based on their needs. If you notice him getting sleepier earlier than 8pm, he needs an earlier bedtime. But, you can really on successfully move a set schedule by about 15 minutes a night. So make changes once you are on a good schedule gradually.
Oh and the falling asleep for 2 minutes thing and then waking up, might be a sign of being overtired. When kids get overtired, they have a horrible time falling asleep and the inability to stay asleep is a classic sign.
I honestly believe that schedules are not the enemy as some may think. They help a child's natural circadian rhythm find balance and without them I think the child's body is constantly trying to find a rhythm, but can't because we allow other parts of the schedule to be inconsistent.