Heat the olive oil in a large frying pan over a medium-high heat.
Add the onion and cook for 3–4 minutes, stirring occasionally, until softened.
Add the garlic and chilli and cook for another minute until fragrant.
Stir in the tofu and cook for 3–4 minutes, turning occasionally, until it's starting to turn golden.
Add the tomato purée and gochujang paste, stirring until the tofu is evenly coated. Cook for 1 minute, adding a splash of water if needed to loosen the sauce.
Add the tomatoes and cook for 2–3 minutes, stirring occasionally, until they begin to break down. If the pan starts to dry out, add another splash of water or some of the bean liquid.
Add the butter beans along with their liquid, stir well and simmer for 3 minutes until the sauce has thickened slightly.
Stir through the cream and simmer for another minute until the sauce is creamy and heated through.
Remove from the heat and stir in the coriander and lime juice.
Season to taste with salt and freshly ground black pepper, then serve immediately.