I have 3 kids and there were all different, but here are some things to try. At 3 months, he should start to settle into some sort of schedule. Like up at about the same time each day and then ready to nap at around the same time. I never had any that only slept for 45 minutes at a time forever, but it seems like at around 3 months, that might be more of the normal type pattern and it gets longer as they get older. I always tried to notice when they were sleepy, then try to put them down. Again, at 3 months it may just be too soon for him to totally settle into a routine, but try putting him in his bed with the mobile on and sit with him for a bit. If he's fine, walk out of the room for a few minutes. If he fusses, come back in and start the mobile again. Keep going out and in and starting the mobile for as long as he is basically happy. You said you are BF, is he co sleeping at night? If so, it may be that he's not used to his crib and these short times in his crib may help solve that. I've also heard to put a hot water bottle or heating pad in the crib and remove it when you put the baby in...that way it's warm when you lay them down. Another idea is just to hold him in a chair/couch where you can also sleep. 45 minutes isn't that long, but it might be just what you need to recharge your batteries. I definately remember doing this with my last. There was a time around 3-4 months where the only way I could get him to nap was to sit in the chair and hold him. He'd nap, I'd rest or nap, and everyone was happy. I didn't do it for every nap, and I didn't do it for the rest of his life, but I did do it for a while, it really helped me rest. So, maybe try that. You AND he napping for 45 minutes.
I just read through the posts and have to second the thought that he's possibly not eating enough. Babies need the hind milk that comes after about 5 minutes (I think) that is thicker, richer, and stays with them longer. If he's eating 5 minutes each time, he may never really be full and thus wants to nurse again after a few minutes. Try making him go longer between feedings with either a pacifier, or rocking, etc. You can also encourage him to eat more by trying to keep him awake while he eats so he doesn't just fall back asleep. I know you said nighttime isn't a problem, but it will become a problem. Sleep deprivation is really hard! If you are trying to nurse him several times during the night, but for only 5 minutes, it will catch up with you in a few months.