Hi! I'm sure you are doing a great job! It can be frustrating at times though. The thing about babies is that they can't be reasoned with (LOL) and they aren't logical. I got lots of help from books. It's important to find the few books that you agree with though.
I got my son to sleep through the night (9pm to 7:45am) at 11 weeks old by using techniques in the book called On Becoming Babywise. The main idea is that you never let the baby fall asleep while feeding, that way he won't use it as a device to fall asleep. There is a pattern to follow during the day - feedtime, then waketime/playtime, then sleeptime, then back to feeding again when it's time. During any middle-of-the-night feedings (which should be dropped by the time he is 3 months old) you feed and then put him right back down. A three month old gets enough food during the day (if his eating habits are healthy) to not need a feeding at night. The routine of getting a feeding at night might be why he wakes up - he might not necessarily be hungry.
I completely stopped giving any bottle or water or anything through the night after my son slept through at 11 weeks, and my doctor agreed. At about 16 weeks old I had to start letting my son cry it out - once for almost an hour, but after 2 nights and then 2 more nights 4 days later, he finally went back to sleeping through the night. Teething is when they wake up during the night a lot, so I always listen to his cry, if it's whiney and not very loud, I know he will get himself back to sleep so I quietly peek in to check on him, but don't go in unless it lasts more than 30 mins. If his cry is harder and persistantly loud, I check him, see if there is lots of drool, and consider giving him some pain relief (Tylenol) for his teething.
Another good thing is something called Gripe Water (I bought it online). It tastes like black liquorice, and giving him a little of that from the dropper soothes his tummy or helps hiccups or gas.
Another very important thing is to have a routine before bed that doesn't change much. That way he knows what to expect, and he finds comfort in that.
Good luck!