At 3.5 mnth of age he may not have a perfect schedule for toilet. But that doesnt mean that he cant be taught to shift his toilet area outside. U need to be consistant in teaching so. To begin with, thorougly clean the area that he mostly uses as toilet to remove all urine odour & then make that area unavailable to him completely. Under no circumstances let him pee there again.
Then after every nap, feeding, playing take him out which u already do. This time carry some treats with u. Also soak some cloths in his urine & scatter themout side at different places. The scent of his urine should encourage him to use that spot as dogs like to urinate at same places. Take him to those spots & let him sniff. If he pees then immediately give him the treat. Walk back home happily.
Also while in house always keep a close watch. Pups generally circles a spot & sniff extensively just before peeing. If u see him doing so immediately pick him up & place at his designated toilet place. Try to use the same spot as long as possible. If he pees then give a treat immediately. Treat must be given immediately, not after some time. Otherwise he wont understand why u gave it to him.
If u catch him in the act, i.e, if he has already started to pee, say a loud NOOO, pick him up & again put outside. Again a treat for finishing the job outside.
U must be very consistant. Follow these tips properly & he will learn.