From my experience, sometimes you cannot get the best price from direct purchases, recommend to try all sources.
For air tickets, besides direct purchase from airlines, you have to try zuji or expedia, budget airlines or even price beat guarantee. Sometimes you can get very good price using these, so you must try all sources.
For hotels, you really have to try using third party online agencies, some hotels give very good prices to these online agencies, so far most reputed ones are pretty safe. I tried agoda, ctrip, booking.com, hotel quickly, tiket.com, trivago.com, all are okay. The most worrying one for me was using tiket.com, due to bad online reviews, but the hotel receptionist assured me that tiket.com is a reputed agency and they do recognised rooms booking using it, and thus also no issue for me too. If you are in doubt, call and ask the hotel directly. Again try all sources.