Хорошо, я понял это. Я предполагаю, что мой обратный вызов выполнялся в потоке пользовательского интерфейса, и сразу после тоста пришло сообщение HTTP и текстовое сообщение, поэтому поток пользовательского интерфейса блокировал сам себя и не обрабатывал тост. Моим решением было поместить всю тяжелую работу в отдельный поток, как было предложено на Toast Immediately и подробно изложено здесь http://developer.android.com/guide/appendix/faq/commontasks.html#threading, поэтому после того, как я это сделал, все работает волшебным образом. Не было никаких проблем с «контекстом» вообще.
Что касается странности 2 тостов, работающих, а 1 нет, я думаю, что maketext (...). Show () каким-то образом обрабатывает часть очереди тостов пользовательского интерфейса и может вызвать появление тоста.