Buttler's wonderful 121 was a worthy response to Kumar Sangakkara's hundred, and carried his team to within eight runs of an amazing victory after Sangakkara had powered the tourists to 300 for nine, largely in partnership with Tillakaratne Dilshan (71).
England stumbled badly in pursuit of their joint second-highest run chase in this format, but Buttler and Ravi Bopara (51) refused to give up in a stand of 133, having joined forces for the sixth wicket with 190 runs required at a rate of more than nine an over.
"It was looking pretty bleak before those two got going," Cook said. "It was a great partnership. When you're chasing 300 at Lord's, it's very hard to defend. We didn't quite get the first 20 overs right. That partnership was fantastic. It just couldn't quite get us there. We know what a special talent Jos is. The way he batted was brilliant. He doesn't deserve to be on the losing side."
Cook acknowledged his team were always up against it after losing both openers - himself and Ian Bell- within the opening four overs. "When you lose two wickets in the first couple of overs, there's always going to be some rebuilding," he said.
"We know we have to play those first 30 overs better to chase down 300. Those outstanding innings that we're getting at the death, they're to get us above par score or to chase it down."
Sri Lanka's triumph meant the teams will head to Edgbaston on Tuesday for a series decider. "Fair play to Dilshan and Sangakkara, they didn't give us a chance," Cook added. "We have to dust ourselves down. We have a one-off game to try to win the series now. It's obviously very disappointing to be on the losing side, but there's all to play for now at Edgbaston."
Sri Lanka captain Angelo Mathews was also impressed by Buttler's knock, but praised Lasith Malinga and Nuwan Kulasekara for their efforts with the ball in restricting the England batsmen at the end, too.
He said: "In pressure situations, Lasith is the man for us, and also Kula, because they are the most experienced guys in our bowling line-up. You give the ball to them and you're pretty happy. We lost our way in the middle because we were looking for too many runs too early. All in all, 300 was a good score on this wicket."
Man-of-the-match Buttler, whose innings ended in a run out, was delighted with his performance in scoring the fastest ODI hundred at Lord's. "That's definitely the best I've ever played," he said. "It's brilliant to play well, but just disappointing to not get over line.
"Ravi and I just had some fun. We knew we were miles behind and that gave us the licence to play how we wanted. As that partnership built, we thought we had the game. Then we lost Ravi, and when someone like Malinga comes back at the end it's always hard."
Buttler played down talk over his ton boosting his Test chances, though. "It's a different format, so maybe, maybe not," he said. "It's just about trying to do the best you can do every day. I have so many areas I can improve."