Partitioning big tables
General answer is that you could remove the paritioning and the performance would not drop. Hitting only one partition is quite similar in performance compared to filtering out 95% of the row based on a proper index. Partitiions generally are not for increasing select performance, but for allowing super fast DROPPING of partitions (when the data falls out of scope).

So, you really need to do the basics - get the slow queries, analyze them, find out how to write them better and / or whether other queries are blocking them. Unless you have really special cases (which we can not evaluate given the information you give)... the partition is totally not helping you in the selects.