I think you have had great advice - I work at home part time but I'm also a child psychologist. Your son needs some limit-setting. First, when you're working, he needs to be in another room, not your office. Your work time is not his time to bother you and he's plenty old enough to both play by himself and to take care of himself - get a snack or a drink, find his toys, read a book, etc. You need to let him know there will be rewards for observing the rules - when he follows the rules he will have time with you for something fun, when he intrudes, he loses the time alone with you - no movie, no trip to the park, etc. Then he gets to choose what he wants to do.
Having a friend over is a great idea. Having play dates at other kids' homes is also helpful. When he has someone else to engage his attention, it takes some of the pressure off of you.
For my son, day camp was the magic answer. He needed more structured activities. It's not daycare - it's a chance to have fun activities and a new environment. He does sports, computer camp, hiking, etc. Every week he does something different. Try the zoo, the art museum, etc. They all offer classes for kids your son's age. What interests your son? It doesn't have to be every week, nor does it have to be all day. Just give him something to engage his attention and his imagination.