Sri Lanka set the hosts a realistic target of 256 at Chester-le-Street, but England collapsed to 99 all out in just 26.1 overs - their lowest ODI total on home soil for 13 years and their biggest ever home defeat in the format.
Morgan, who was stand-in skipper for the match, was one of only two players to reach double figures for the hosts, and he acknowledged that the team's performance was nowhere near good enough.
"Today, throughout our batting display, it was just terrible. I think so. It's as badly as we can bat anyway. It was one of the worst performances I've been a part of, in an England shirt. I can't explain why we played that badly," he told reporters.
"It was a little bit tacky, and nipped around a small bit - but we're good enough to negotiate that. It's a pitch we would have turned up at and said 'Yes, perfect, we'd love to play' - especially against a side like Sri Lanka. But we've been outplayed.
"We bowled quite well at them. We probably lacked a few wickets, but we still contained them to four or four-and-a-half an over - which was a great effort - and we were happy with the score they got. But we lacked partnerships through the whole innings, and never seemed to get going. We just struggled. I don't think it lacked any purpose. It just lacked enough skill to negotiate good balls."
The result means that the series is now tied at 1-1 with three matches still to play.