I am applying for a PhD and I am asked for 3 recommendation letters. I have 2 which I think are good letters. I am looking for someone to provide the third. I had 4 courses with a certain professor in my undergrad. I scored B+ (3.25/4) in two courses and an A (3.75/4) in the other two. Long story short, I know and the professor knows that I deserve a much higher grade in the two courses which I scored B+ in. I am thinking of asking him for his reference letter as I think they might help in making the effect of these two B+s less sever. I think I have gained a lot of respect from him in last year or two which made me think that his recommendation might be positive, but I am not sure about what he will write.
Is it logical to ask him or should I ask someone else ? I don't have many other option; The other professors only taught me one or two courses and I am not sure if I can get good recommendations from them. Additionally, that professor was at the committee for my final project presentation in my undergrad. I scored very high in that too.
I am little confused on which is better, a recommendation from this professor, or from a professor who taught me one course and I scored an A+, or from a professional referee since my other two referees are academics.