Couple of things if you haven't hidden your own thread
"Sleep training" = evil mother to many Mumsnetters so brace yourself and grow a thick skin. I'd repost and ask for help on how to extend his overnight sleep periods.
"Sleeping through" is a relative concept. Someone posted recently as to what it was defined as and people reported their DC as sleeping through as everything from 12 hrs straight without a murmer to a single 4/5 stretch. There is no norm, there is just what you can all survive on.
12 weeks is a bit of a milestone imo. They only really seem to "get" the difference between night and day then. It's a good time to properly start the whole bedtime routine then. If that's when he has his formula, do it in a darkened quiet room.
It's your PFB, so I am guessing like many of us who have learned the hard way too, that you picked up and soothed your DC every time he sounded upset, quite possibly assumed he was hungry and put a boob in his mouth. Cue a child who gets lots of food overnight and can't resettle himself. I also had a pfb who was a poor winder and I couldn't face a spot of robust back rubbing when she dozed off in my arms so frequently put her back down after a half hearted rub or two.
This is what worked for me / the lesson learned with DC2.
ALWAYS WIND THOROUGHLY.
Put them in their cot awake or semi awake. It will serve you well even if you have to revisit initially for frequent shushings or pick ups. 12 weeks is a little young for what is traditionally considered "sleep training" ie let them scream for 2 mins, then 3 and so on.
Learn the difference between grizzling and proper crying. Set yourself a time target for leaving him to grizzle, and return to soothe. If he's screaming his heart out, then he's still hungry/windy/teething/arsey for no good reason but just wants a cuddle.
If formula /mix feeding works for you, then use it.
If you have a spare room bed with a firm mattress then co-sleep with your DC when you reach the end of your rope. Put him down in his own cot, again after a dream feed but by all means take him into bed with you to feed lying down when he goes off again at 4am or sooner.
Put him in a gro bag, put yourself in some warm pjs and a light blanket so he is just sleeping on top of the sheet and you are not stressing about SIDS, or waking your DH or anything else.
When co-sleeping, if baby starts to stir you can be right beside them with a gentle shush and breathing deeply right beside their face seems to soothe them back off before they wake properly
Alternate the wakeups with DH. Babies will often settle for someone they don't associate with food.
Ensure he has lots of physical tummy time and interaction/stimulation during the day so he is actually tired. Make sure he has reasonable naps. My pfb was a bad napper and spent a lot of time in her pram being taken for long walks because I was bored at home by myself.
When he gets to 6 months, if things are still this bad, come back to MN to have the same conversation. 
Resign yourself that some babies are just poor sleepers - they do all grow out of it eventually.
Cancel your holiday/Christmas and hire a night nanny to do it for you.