Who decides the price of bitcoin?
Prices are set by the market, meaning that every individual decides what they will buy/sell their own bitcoin for, and the generally accepted price is an aggregate of all the individual prices.

If a bitcoin owner prices their coin it too high, no one will buy it. They will either have to reduce their price to a more reasonable level, or just go without a sale.

If they price it too low, the coin will sell immediately, and be taken off the market.  The buyer will likely price the coin higher, closer to the market value.

The sites that are buying/selling (such as CoinBase) are quoting the price they are actually willing to pay.   Other sites that provide information (Blockchain.info) are posting the results of their survey of multiple buyers/sellers.   It is possible that their data may be skewed or differ from the data on another site.  But a liquid market with lots of activity should keep those differences small.