What an interesting problem.

We are told that “Harry is the 3rd tallest.” We are also told that “Steve is the next tallest after Tom.” Since Tom then Steve must be in consecutive order, Tom must be 1st and Steve 2nd. (The only other option, 2nd and 4th, are not consecutive).

We are told that “Steve is either the 2nd tallest, OR the one who spent £5.” One of the statements must be true but NOT both. Since we concluded that Steve is the 2nd tallest, Steve must NOT be the one who spent £5.

For Steve, there is only one other option left for the cost: £11.
Retrospectively, the purpose of the information on heights was solely to eliminate the cost options for Steve and leave us with only one possible answer. Also note that there is no correlation between the costs and heights.